![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перехожу на юникод и возник вопрос, чем заменить string[250]?
EgorovAlex © (2005-09-17 13:56:00)Ничего кроме array[0..249] of WideChar в голову не приходит. Может есть более красивое решение?
Anatoly Podgoretsky (2005-09-17 23:00:00) [1]EgorovAlex © (17.09.05 22:52) [7]
Только увеличь размерность до 0..250 - одна позиция нужна для нуля и ты должет будешь сам беспокоиться от этом, но это не вызывает особых проблем. Если даже не знаешь об этом, то быстро увидишь ошибку и исправишь ее.
EgorovAlex (2005-09-17 22:52:00) [2]Спасибо Anatoly! Я так и думал, но надеялся, что есть решение попроще, чтобы потом в программе без дополнительных действий читать это значение как я делаю это с string[250].
Меня всегда поражала Ваша производительность - и на этом форуме, и в swrus-programming. Ещё раз спасибо за уделённое внимание.
Anatoly Podgoretsky (2005-09-17 22:34:00) [3]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:17:00) [4]Проблема состоит в том, что этот тип участвует в записи, для примера:
type
TRec=record
Name: string[250];
end;
и эта запись пишется в файл. Тут и возникает, как это лучше переписать для юникода. Понятно, что все старые записи нужно будет переформатить, но как лучше описать запись? SetLength тут не поможет
Anatoly Podgoretsky (2005-09-17 19:22:00) [5]palva © (17.09.05 17:55) [2]
По-моему автор хочет статический тип. WideString[250] ведь не будет работать.
А в чем существенная разница, если SetLength и больше его не трогать?
А вариант array[0..249] of WideChar тоже не плох, является близким аналогом, нет только байта длины. Но его по определению и быть не должно, зато должен быть заключительный ноль. Аналогом для WideString[250] является PAnsiChar тип array[0..249] of Char
Помоему проблема высосана из пальца, из-за непонимания.
guav (2005-09-17 19:17:00) [6]palva © (17.09.05 17:55) [2]
> По-моему автор хочет статический тип.
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1126895306&n=3
palva (2005-09-17 17:55:00) [7]По-моему автор хочет статический тип. WideString[250] ведь не будет работать.
Anatoly Podgoretsky (2005-09-17 14:05:00) [8]WideString естественно