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

Вниз

Динамический массив   Найти похожие ветки 

 
zloy_dima   (2003-04-30 11:53) [0]

Есть указатель на массив (mas) байтового типа.
Требуется занисить в этот массив значения переменных различного типа (a,b,c...). Можно ли сделать аналог как при работе с файлами? Т.е. есть файл байтового типа (f) и заноситься в него:

blockwrite(f,a,sizeof(a));
blockwrite(f,b,sizeof(b));
blockwrite(f,c,sizeof(c));
...

Как можно сделать теже операции непосредственно с динамическим массивом?


 
MBo   (2003-04-30 11:55) [1]

проще всего Move


 
Smithson   (2003-04-30 12:01) [2]

Не совсем так... У тебя mas: array of byte?
Тогда Move(VeryLongData, Mas[0], SizeOF(VeryLongData)) конечно пройдет, но индекс следующего свободного элемента будет SizeOF(VeryLongData), при следующей записи SizeOF+SizeOF... по-моему, это sex.


 
ASMiD   (2003-04-30 12:07) [3]

Есть такой поток - TMemoryStream
Там все как с файлами, но храниться в памяти


 
zloy_dima   (2003-04-30 12:13) [4]

ASMiD: Можешь небольшой примерчик кинуть?


 
ASMiD   (2003-04-30 12:48) [5]

var
MyMemoryStream:TMemoryStream;
a:real;
b:integer;
c:string;
begin
MyMemoryStream:=TMemoryStream.Create;
a:=3.1415926;
b:=1024;
c:="TEST";
MyMemoryStream.Write(a,sizeof(a));
MyMemoryStream.Write(b,sizeof(b));
MyMemoryStream.Write(c,Length(c)+1);
MyMemoryStream.SaveToFile("D:\test\tst.dat");
MyMemoryStream.Free;
end;

Такое Устроит?
SaveToFile сохраняет поток в файл и вообще - читайте Delphi Help
Там все доступно расписано.
Поток можно и очистить и спозиционировать и прочитать обратно из файла
и т. д. и т. п.



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

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

Наверх





Память: 0.45 MB
Время: 0.006 c
1-34492
Shuric
2003-04-29 17:50
2003.05.12
Обмен между приложениями


3-34354
Askik
2003-04-18 15:44
2003.05.12
Как заставить ADOQuery не скачивать все записи набора данных?


3-34366
NOV
2003-04-22 16:31
2003.05.12
Можно ли сделать такой запрос


1-34481
dimon1979
2003-04-29 16:12
2003.05.12
Встроенный ассемблер


14-34588
neXt
2003-04-23 13:46
2003.05.12
Нужно ли спорить с дураками?





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