Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];
Вниз
Тип данных TMemoryStream глюк? Найти похожие ветки
← →
S (2002-09-11 17:29) [0]При записи данных в TMemoryStream руссие буквы пропадают. Как это личить?
← →
MBo (2002-09-11 17:32) [1]код?
← →
McSimm (2002-09-11 17:35) [2]Найти ошибку в программе. Для TMemoryStream нет разницы какие буквы
← →
S (2002-09-11 17:39) [3]Создаю
Stream:=TMemoryStream.Create;
for i:=1 to Length(Stroka) do
begin
Stream.Write(Stroka[i],SIzeOf(Stroka[i]));
// Stream.WriteBuffer(Stroka[i],1);
end;
Stream.SaveToFile("C:\readMe.txt");
При записи все ОК. Но когда смотрю файл то вижу не соответствие.
← →
McSimm (2002-09-11 17:49) [4]1. Совсем не надо делать это в цикле.
Stream.Write(Stroka[1],Length(Stroka));
2. Чем смотришь?
← →
MBo (2002-09-11 17:51) [5]Stream.Write(Stroka[1],Length(Stroka));
для AnsiString
← →
S (2002-09-11 17:57) [6]Я так пытался но у меня dll и я из нее вызываю метод. Я пытался сделать так:Stream.Write(Stroka,Length(Stroka));
Ни чего не получается. Вообще. А строка у меня типа WideString.
← →
McSimm (2002-09-11 18:03) [7]Stream.Write(Stroka[1],2*Length(Stroka));
т.к.
For Unicode (WideString) strings, Length returns the number of bytes divided by two.
← →
S (2002-09-11 18:30) [8]Спасибо за ответы. Надо было WideString присвоить String и тогда все работает.
← →
McSimm (2002-09-11 18:36) [9]В дополнение
Stream.Write(Stroka,...
неправильно в любом случае. Т.к. происходит запись указателя на строку, а не ее содержимого
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c