![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
поток данных в виде TextFile... [D5, WinXP]
Secam © (2004-12-26 16:17:00)Уважаеме Мастера,
Есть такая проблема. В одном компоненте, не мной написаном есть набор функций, реализующий обмен данными через сокет.
Сокет привязан к манипулятору типа TextFile.
А проблема вот в чем:
Во первых "\r\n" если во входных данных конец строки обозначается просто "\n" то функция ReadLn(f,str); вообще ничего читать из манипулятора не хочет.
Во вторых, Признак EOF естесственно не работает, т.к. это не
файл а поток данных. Я знаю длину в байтах, сколько нужно прочитать. Если я выйду за границу то readln застрянет в ожидании новых данных, которые никогда не придут.
Есть ли какой-то способ прочитать из TextFile без read и readLn,
т.к. очень не хочется привязываться к "\r\n" и накладывать ограничение, чтобы в конце данных обязательно была пустая строка.
Secam (2004-12-27 09:57:00) [1]Нет, ReadFile тоже дает несоответствие типов ...
Не работает он с ReadFile
Secam (2004-12-27 09:36:00) [2]Нет, я не про то,
Если я поменяю в объявлении класса
var
FileVar: Textfile;
на
var
FileVar: file;
тогда, как я уже говорил, компонент даст несоответствие типов, это было первое, что пришло мне в голову. Вся проблема в том, что манипулятор надо оставить типа TextFile (ну или как-то может преобразовать тип ...)
А с ReadFile Сейчас попробую что-нибудь придумать ...
Fay (2004-12-27 04:06:00) [3]CreateFile/SetFilePointer/ReadFile/CloseHandle
Просто Джо (2004-12-27 00:39:00) [4]Есть ли какой-то способ прочитать из TextFile без read и readLn
var
FileVar: file;
или
FileStream: TFileStream
Да мало ли...