Вниз
Скачать: CL | DM;

Перехожу на юникод и возник вопрос, чем заменить string[250]?   Найти похожие ветки 

 
EgorovAlex ©   (2005-09-17 13:56) [0]

Ничего кроме array[0..249] of WideChar в голову не приходит. Может есть более красивое решение?


 
Anatoly Podgoretsky ©   (2005-09-17 14:05) [1]

WideString естественно


 
palva ©   (2005-09-17 17:55) [2]

По-моему автор хочет статический тип. WideString[250] ведь не будет работать.


 
guav ©   (2005-09-17 19:17) [3]

palva ©   (17.09.05 17:55) [2]

> По-моему автор хочет статический тип.


http://delphimaster.net/view/15-1126895306/


 
Anatoly Podgoretsky ©   (2005-09-17 19:22) [4]

palva ©   (17.09.05 17:55) [2]
По-моему автор хочет статический тип. WideString[250] ведь не будет работать.

А в чем существенная разница, если SetLength и больше его не трогать?
А  вариант array[0..249] of WideChar тоже не плох, является близким аналогом, нет только байта длины. Но его по определению и быть не должно, зато должен быть заключительный ноль. Аналогом для WideString[250] является PAnsiChar тип array[0..249] of Char
Помоему проблема высосана из пальца, из-за непонимания.


 
EgorovAlex ©   (2005-09-17 22:17) [5]

Проблема состоит в том, что этот тип участвует в записи, для примера:

type
TRec=record
 Name: string[250];
end;

и эта запись пишется в файл. Тут и возникает, как это лучше переписать для юникода. Понятно, что все старые записи нужно будет переформатить, но как лучше описать запись? SetLength тут не поможет


 
Anatoly Podgoretsky ©   (2005-09-17 22:34) [6]

EgorovAlex ©   (17.09.05 22:17) [5]
Проблема состоит в том, что этот тип участвует в записи, для примера:

type
TRec=record
Name: string[250];
end;


Точно также нормальная запись
type
  TRec=record
     Name: array[0..249] of WideChar
  end;


 
EgorovAlex ©   (2005-09-17 22:52) [7]

Спасибо Anatoly! Я так и думал, но надеялся, что есть решение попроще, чтобы потом в программе без дополнительных действий читать это значение как я делаю это с string[250].
Меня всегда поражала Ваша производительность - и на этом форуме, и в swrus-programming. Ещё раз спасибо за уделённое внимание.


 
Anatoly Podgoretsky ©   (2005-09-17 23:00) [8]

EgorovAlex ©   (17.09.05 22:52) [7]
Только увеличь размерность до 0..250 - одна позиция нужна для нуля и ты должет будешь сам беспокоиться от этом, но это не вызывает особых проблем. Если даже не знаешь об этом, то быстро увидишь ошибку и исправишь ее.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
14-1126792050
TG
2005-09-15 17:47
2005.10.09
Сайт


1-1126946533
testerr
2005-09-17 12:42
2005.10.09
скопировать экран TWebBrower


1-1127126645
antikaban
2005-09-19 14:44
2005.10.09
преобразование doc овского файла в веб-страницу


3-1124738990
Cheaterr
2005-08-22 23:29
2005.10.09
Сравнение остатков с мин. размером кол-во материала (Access)


14-1127126807
pazitron_brain
2005-09-19 14:46
2005.10.09
GTA : VC по сети.




   Наверх