|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
из бинарного файла получить строку
доброго времени суток!
у меня маленькая проблемка, которую я не могу решить сама... есть некоторая строка. я ее запихнула в двоичный файл, а вот обратно из этого файла получить строку не получается... вот код записи строки в файл: Код:
AssignFile(f, 'myFile'); Rewrite(f, 8); BlockWrite(f, 'строка', 1); CloseFile(f); |
#2
|
||||
|
||||
Код:
var f:file; s:string; begin AssignFile(f, 'myFile'); Reset(f, 8); SetLength(s,8); BlockRead(f,s[1],1); CloseFile(f); end; Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
|||
|
|||
все это прекрасно! спасибо большое! но! строка s получается вида, как если бы я открыла этот двоичный файл в блокноте... т.е. набор всяких кракозябр!)))
а мне нужно получить обратно 'строка' |
#4
|
|||
|
|||
Код:
var f: File; s: PChar; begin AssignFile(f, 'myFile'); Reset(f, 8); GetMem(s, 8); BlockRead(f, s^, 1); CloseFile(f); ShowMessage(StrPas(s)); FreeMem(s, 8); end; |
#5
|
|||
|
|||
почти, но тоже не так))) еще есть варианты?
|
#6
|
||||
|
||||
похоже вы сохранили в досовской кодировке, а просматривать пытаетесь в виндовой.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#7
|
|||
|
|||
а как понять, в какой кодировке я сохранила его? (сразу извиняюсь, если вопрос дурной )
в первом сообщении написана процедура, которая сохраняет строку в файл... и вот он сам, собственно.... что вы можете сказать по этому поводу? |
#8
|
||||
|
||||
Это вообще фиг знает что, какой-то беспорядочный набор данных. Больше всего похоже, что записали вы не строку в файл, а мусор из памяти. Или данные находятся в зашифрованом виде, но поскольку вы приводите пример элементарной записи в файл, то склоняюсь к мусору.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#9
|
|||
|
|||
тогда, может будете так любезны, подскажите, как нормально(!) записать строку в файл и обратно?)))
а файл, который я выкладывала, должен быть без расширения (я добавила расширение, чтобы его сюда загрузить. но сути это не меняет, как был бред в файле, так и остался) |
#10
|
|||
|
|||
Цитата:
Код:
var f: TextFile; str: string[8]; begin // запись Str := 'строка'; AssignFile(f, 'myFile'); Rewrite(f); Write(f, Str); CloseFile(f); // чтение AssignFile(f, 'myFile'); Reset(f); Read(f, str); CloseFile(f); ShowMessage(str); end; |
#11
|
|||
|
|||
спасибо большое! это работает. а научника отправлю куда-нить с бинарным файлом! ох, и намучилась я с ними.....
|