Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
ВнизКак прочитать строку из файла Найти похожие ветки
← →
BofA (2002-04-02 15:29) [0]Есть файл
F : file of Char
, надо из него прочитать строку длины Len (длина заранее не известна), начиная с символа Pos, и загнать всё это дело в строкуS : string
← →
Fellomena (2002-04-02 15:32) [1]Я бы рекомендовала использовать класс TStringList, загружая в переменную этого типа нужный тебе файл и затем работая с индексированными строками как душе угодно - удобно :)
← →
MBo (2002-04-02 15:34) [2]>длина заранее не известна
а когда становится известна?
← →
Alx2 (2002-04-02 15:40) [3]И с какого места начинается строка?
← →
Song (2002-04-02 15:45) [4]
Var a: array [0..10] of Char;
...
ShowMessage(String(a));\
← →
BofA (2002-04-02 15:47) [5]Пояснение :
Дан нетипизированный файл, в начале записано число (Integer), орпеделяющее размер строки, а далее сама строка; после строки записаны другие данные (не строки), поэтому TStringList не помогает.
← →
Виктор Щербаков (2002-04-02 15:49) [6]Посмотри BlockRead.
← →
MBo (2002-04-02 15:52) [7]и TFileStream - очень удобно.
← →
Alx2 (2002-04-02 15:53) [8]Var
F : File;
sSize : Integer;
S : String;
begin
AssignFile(F,"somefile.ext");
try
ReSet(F,1);
BlockRead(F,sSize,SizeOf(sSize));
SetLength(S,sSize);
BlockRead(F,S[1],sSize);
finally
closeFile(F);
end;
end;
← →
BofA (2002-04-02 16:16) [9]2Alx2: Спасибо огромное! Это мне и надо.
Я пытался сделать то же самое, но писал неBlockRead(F,S[1],sSize);
аBlockRead(F,S,sSize);
и, естественно, это не работало.
Спасибо всем за помощь!
P.S.: Кстати, если кому интересно, я пишу редактор ID3v2 тэгов
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c