Показать сообщение отдельно
Старый 07.11.2011, 19:03   #1
barsunduk
ПроЭктировщик
 
Аватар для barsunduk
 
Регистрация: 09.05.2010
Адрес: рф ро шахты
Сообщений: 177
Написано 66 полезных сообщений
(для 271 пользователей)
как поместить данные из памяти в строку?

как поместить данные из памяти в строку?

вопрос, наверное, глупый, но для меня все эти указатели пока темный лес. вопрос вот в чем:

я пакую текст в файл Packname$. кодировка текста неизвестна, заканчивается ли строка на #0 - тоже не знаю, но разделители #13 там есть точно. впрочем, это неважно.

CreatePack(Packname$)
AddPackFile("text.txt"9)
ClosePack 
потом, когда понадобится, я собираюсь извлечь содержимое всего текстового файла в одну строку.

Procedure.s GetText(Filename.s)
  Protected 
Mem.l
  OpenPack
(Filename)
  Protected 
Size.PackFileSize()
  
Mem NextPackFile()
  
ClosePack()
  Return 
PeekS(MemSize)
EndProcedure 
итак, в Mem у меня адрес памяти, где лежит распакованный тектовый файл, в Size - длина текста в байтах (но не в символах). как мне содержимое памяти в строковую переменную запихать? я что-то не уверен, что всё правильно делаю, потому что в справке сказано, чтов Text$ = PeekS(*MemoryBuffer [, Length [, Flags]] ) Length - это длина строки в символах, а не в байтах.
__________________
to be or not to be - it's not a question!
2b or not 2b = ff

Последний раз редактировалось barsunduk, 07.11.2011 в 20:15.
(Offline)