Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-46358
iva
2002-04-04 14:04
2002.04.15
как получить позицию нового окна?


7-46523
EskimOS
2002-01-21 10:38
2002.04.15
Работа с большим файлом...


3-46263
Buh
2002-03-25 21:57
2002.04.15
События в Interbase


1-46426
dimonf
2002-04-02 21:13
2002.04.15
Как сделать, чтобы QuickReport-а не было видно на моей форме?


14-46515
Gray 99 rus
2002-03-04 19:56
2002.04.15
Помогите с объемом программы...





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