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

Вниз

Считывание строки в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.074 c
4-1162553030
мах
2006-11-03 14:23
2007.04.08
Не видно окна программы


15-1173911633
Константинов
2007-03-15 01:33
2007.04.08
*.rar, *.zip - открываются Far-ом не могу побороть.


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


3-1169128300
Layner
2007-01-18 16:51
2007.04.08
Сравнение 2х БД => получить разницу в SQL скрипт


8-1153895658
Delphi6
2006-07-26 10:34
2007.04.08
Delphi: Библиотека или dll для работы с фотографиями





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