Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Вниз

закарючка   Найти похожие ветки 

 
wetrov   (2003-01-17 13:04) [0]

привет мастерам.
var
bufer: array[0..225] of char;
begin
AssignFile(F1, "c:\log.txt");
settextbuf(F1,bufer);
Reset(F1); {F1 открыт}
while not Eof(F1) do
begin
Readln(F1, St); {читаем строку }
end;
CloseFile(F1);
s:=tstringlist.Create;
s.add(StrPas(bufer));
s.SaveToFile("klop.txt");
при сохранении буфера в "klop.txt" в начале файла появляется такая закарючка " "
а когда и две " " которая собой заменяет первый символ а за ней текст.
с функией Writeln закарючек нет,по крайней мере не видно,
но файл увеличивается на несколько байт.
подскажите как избавится от закарючак.


 
Digitman   (2003-01-17 13:36) [1]

от це ж без "закарючек" :
var
bufer: array[0..4095] of char;
..
begin
s:=tstringlist.Create;
try
AssignFile(F1, "c:\log.txt");
settextbuf(F1,bufer);
Reset(F1); {F1 открыт}
try
while not Eof(F1) do
begin
Readln(F1, St); {читаем строку }
s.add(St);
end;
s.SaveToFile("klop.txt");
finally
CloseFile(F1);
end;
finally
s.free;
end;
))


 
han_malign   (2003-01-17 13:48) [2]

С головой у тебя бо-бо - буфер предназначен исключительно для внутренних операций ввода/вывода - ты не имеешь права читать из него напрямую. Поскольку буфер кольцевой, естественно налезание более новых данных на старые. У тебя в буфере лежат данные из неиспользованной области кластера(за концом файла), как раз из-за буферизации чтения; первые символы - скорее всего символ конца данных(Ctrl-Z), а дальше старые данные от другого файла.

Пример: Читаем строку длинной 510 байт, через 256-байтный буфер, после чтения в буфере будет конец строки плюс символы #13#10, по которым Readln прекращает сканирование буфера.


 
Digitman   (2003-01-17 14:03) [3]


> han_malign © (17.01.03 13:48)
> С головой


в хэлпе нечитаном - тоже одни "закАрючки")
вот и ползут они как клопы их хэлпа нечитаного в файл "klop.txt"

вот ведь зараза какая !

)))


 
McSimm   (2003-01-17 14:20) [4]

Это символ cEOF = $1A; который функция Eof помещает в буфер


 
wetrov   (2003-01-18 01:32) [5]

да!!!
прикольного мало идем чтать нелпы



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.01 c
14-5143
Yury
2003-01-17 16:12
2003.02.03
RxLib


1-4842
NewGuest
2003-01-23 20:33
2003.02.03
Возникает


9-4702
Евгений Анатольевич
2002-08-12 16:06
2003.02.03
DilphiX редактор


1-5007
Term
2003-01-23 17:41
2003.02.03
Фугкции для работы с датой


3-4760
User_OKA
2003-01-16 10:40
2003.02.03
экспорт в Excel





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