Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2015.02.15;
Скачать: [xml.tar.bz2];

Вниз

Контертировать string[10] в XE2   Найти похожие ветки 

 
Alex_C   (2014-01-13 16:27) [0]

Открыл свой старый проект, который еще на D2007 делался, и там использовались форматы строк string[10] - делалось это для того, чтобы жестко обозначить размер AnsiString. Пытался его перекомпилировать в XE2 - конструкция AnsiString[10] выдает ошибку. А как правильно заменить, чтоб строка имела фиксированный размер и была AnsiString?


 
Германн ©   (2014-01-13 16:47) [1]


> AnsiString[10] выдает ошибку

И во всех версиях Дельфи выдаст ошибку. Правильно было, есть и будет String[10]


 
Alex_C   (2014-01-13 17:43) [2]

Ну да, это понятно. Если я напишу String[10] в XE2 я получу строку не AnsiString, а мне нужна строка именно AsniString.


 
Германн ©   (2014-01-13 17:46) [3]


> а мне нужна строка именно AsniString

А строка AsniString не бывает фиксированного размера. И переменная типа AsniString всегда есть указатель. Так зачем тебе нужна строка именно AsniString?


 
Alex_C   (2014-01-13 17:58) [4]

Моя программа сохраняет и восстанавливает данные на диск через Stream.
Так для простоты организации часть строковых данных у меня имеет фиксированный размер.

Stream.Read(PageFormName, SizeOf(PageFormName));


Где PageFormName объявлялось как string[10].

Понятно, что можно переделать программу под WideString, но уж очень много запомненных данных придется конвертировать.


 
DVM ©   (2014-01-13 18:15) [5]


> Если я напишу String[10] в XE2 я получу строку не AnsiString

Размер  String[10] - 11 байт в любой версии делфи. Это строка из 10 однобайтных символов AnsiChar. Именно это тебе ведь и нужно? Так?
Зачем тут что-то менять?


 
Alex_C   (2014-01-13 18:24) [6]

Посыпаю голову пеплом! Сейчас уже сам проверил - конечно же это и есть то, что мне нужно! string[10] - это не 10 WideChar!


 
Jimmy   (2014-01-13 19:56) [7]

Большое спасибо за вопрос и ответы! В связи с переходом с Delphi 7 на Delphi XE5 возник тот же самый вопрос.


 
Palladin ©   (2014-01-14 09:03) [8]

вообще это в справке описано



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

Форум: "Начинающим";
Текущий архив: 2015.02.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.002 c
15-1404595805
Юрий
2014-07-06 01:30
2015.02.15
С днем рождения ! 6 июля 2014 воскресенье


15-1405358878
Юрий Зотов
2014-07-14 21:27
2015.02.15
Нужны идеи.


15-1404230456
0xdeadc0de
2014-07-01 20:00
2015.02.15
REST Client Library (XE)


15-1405172152
Пит
2014-07-12 17:35
2015.02.15
Лучшее средство разработки для WEB


15-1405114611
alexdn
2014-07-12 01:36
2015.02.15
Перевод программы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский