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

Вниз

Длинна переменной типа string   Найти похожие ветки 

 
Pavelkq   (2005-02-17 10:15) [0]

Пишу обработчик для файлов не совсем текстового вида, но содержащих текстовые блоки. Запихиваю всю эту фигню а переменную типа string. Когда применяю функцию Length, то она возвращает мне длинну переменной до первого нулевого байта. Т.е. она считает #0 концом текстовой переменной. Но реально там еще куча данных. Как можно получить длинну этой переменной?


 
Чапаев ©   (2005-02-17 10:17) [1]

Приведи код. Очень как-то непонятно ты проблему описал.


 
Digitman ©   (2005-02-17 10:26) [2]


> Запихиваю всю эту фигню а переменную типа string


ошибаешься... не всю "фигню" ты "запихиваешь", а "фигню" до первого терминирующего #0 .. оттого и length() показывает тебе меньше чем ты ожидаешь

проверь сам :

var
s: string;

s := #0#0#0#0#0; //5 терминаторов подряд
showmessage(inttostr(length(s))); //5-ку и увидишь !


 
Sha ©   (2005-02-17 10:41) [3]

Запихивать надо правильно.


 
Digitman ©   (2005-02-17 10:44) [4]


> Pavelkq


файл имеет регулярную структуру ? элементы структуры содержат и текстовые и бин.данные ?
если да, то "запихивать в string" каждую структуру просто неразумно


 
Arm79 ©   (2005-02-17 10:50) [5]

"Пихай" в буфер Pchar. И в файл записывай этот буфер, предварительно записав его размер. При считывании прочитай размер буфера, потом прочитай сам буфер тоже как Pchar. затем бегай по буферу и интерпретируй данные как угодно


 
begin...end ©   (2005-02-17 11:05) [6]

> Pavelkq   (17.02.05 10:15)

> Когда применяю функцию Length, то она возвращает мне
> длинну переменной до первого нулевого байта.

Она возвращает не длину переменной, а длину строки. Размер переменной от длины строки не зависит.



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

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

Наверх




Память: 0.45 MB
Время: 0.031 c
3-1107446707
fess
2005-02-03 19:05
2005.03.06
blob -> Query


1-1108722319
Zhekson
2005-02-18 13:25
2005.03.06
IniFile и UpDown


14-1108516196
БаТоН
2005-02-16 04:09
2005.03.06
ПОЧЕМУ foo и bar() ?


1-1108039026
Бульбаш
2005-02-10 15:37
2005.03.06
Изменение размеров компонента


1-1108523985
Wowa-K
2005-02-16 06:19
2005.03.06
Быстрая вставка данных в Word





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский