Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.08;
Скачать: CL | DM;

Вниз

Считывание строки в MemoryStream   Найти похожие ветки 

 
Chaser ©   (2007-03-18 15:12) [0]

Привет.

Пытаюсь в MemoryStream загрузить строку.

[Code]
var
cryptstr: string;
ms: TMemoryStream;
begin
cryptstr:="qwerty123456";
ms:=TMemoryStream.Create;
ms.SetSize(ms.Size);
ms.ReadBuffer(cryptstr,SizeOf(cryptstr));
...
end;
[/Code]

Однако при операции ReadBuffer вылетает ошибка "Stream Read error".
Кто знает в чем проблема?


 
$00FF00   (2007-03-18 15:21) [1]


> ms.SetSize(ms.Size);


Может быть дело в этой строке? ms.size походу равен нулю или чему там ещё, а ты хочешь ещё раз ему этот ноль переприсвоить? Извини коли глупость сморозил - Дельфей под рукой нету.


 
$00FF00   (2007-03-18 15:23) [2]

Логичнее всего на мой взгляд написать так: ms.setSize(SIZEOF(cryptStr));


 
$00FF00   (2007-03-18 15:25) [3]

тфуёблн. Length(cryptStr), а не SIZEOF :)


 
Chaser ©   (2007-03-18 15:33) [4]

Сенькс, вопрос закрыт )


 
Alexey (AZ)   (2007-03-18 21:21) [5]


> Пытаюсь в MemoryStream загрузить строку.

Я наверное забыл делфи :) Почему
> ms.ReadBuffer(cryptstr,SizeOf(cryptstr));

, когда надо Write?


 
xShadow ©   (2007-03-19 09:46) [6]

И ещё дабавить cryptstr[1]


 
killmeplease   (2007-03-19 12:34) [7]

может cryptstr[0]?


 
Elen ©   (2007-03-19 12:38) [8]


> , когда надо Write?

Все правильно. Write - это писать в буфер из MemoryStream, а автору считать (загрузить) надо.


 
Leonid Troyanovsky ©   (2007-03-19 12:44) [9]


> Chaser ©   (18.03.07 15:12)  

> Пытаюсь в MemoryStream загрузить строку.

Не мучайся, возьми TStringStream.

--
Regards, LVT.


 
Плохиш ©   (2007-03-19 13:52) [10]


> killmeplease   (19.03.07 12:34) [7]
> может cryptstr[0]?


> Elen ©   (19.03.07 12:38) [8]
> Все правильно. Write - это писать в буфер из MemoryStream

Знания основ просто поражают...


 
Alexey (AZ)   (2007-03-19 20:30) [11]


> Write - это писать в буфер из MemoryStream, а автору считать
> (загрузить) надо.

Я почему-то пишу в стрим из буфера по Write.


 
Johnmen ©   (2007-03-19 20:57) [12]

Иногда достаточно посмотреть на строку, как на MemoryStream.
type
 TMyMemoryStream = class(TMemoryStream);
var
 ms:=TMyMemoryStream.Create;
 s : string;
...
 ms.SetPointer(pointer(s),Length(s));
...



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

Текущий архив: 2007.04.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.029 c
1-1171561817
Makhanev Alexander
2007-02-15 20:50
2007.04.08
Задача взаимодействия различных программных модулей системы...


5-1150975100
Isaak
2006-06-22 15:18
2007.04.08
TObj = class(TGraphicControl)


2-1173976988
Malik
2007-03-15 19:43
2007.04.08
Что за Word2000 в uses и где его взять?


15-1173769753
Чапаев
2007-03-13 10:09
2007.04.08
Увольнение по собственному желанию


15-1173642160
Andy BitOff
2007-03-11 22:42
2007.04.08
Подивитесь! Гитарный виртуоз.