Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
Внизновая строка Найти похожие ветки
← →
_Shuler_ (2008-01-20 07:33) [0]Здраствуйте , уважаемые мастера.
такая вот проблемка:
При считывание из файла readln(f,s) - считывается не одна строка а пока не забьется весь стринг(s).
файл заполняю текстом из буфера, который копирую из Msword
вот код.
clipboard.clear;
wordapplication1.Selection.SetRange(0,100000);
Clipboard.AsText := clipboard.AsText+wordApplication1.Selection.Text;
assignfile(f,"q.txt");
rewrite(f);
write(f,clipboard.astext);
closefile(f);
assignfile(f,"q.txt");
reset(f);
while not eof(f) do begin
readln(f,s); //здесь считывается почему-то не одна строка. Подскажите в чем проблема?. Спасибо.
if s="*" then
inc(allqoftest);
end;
closefile(f);
← →
_Shuler_ (2008-01-20 07:42) [1]получается так, что enter"ы из ворда некорректно передаются, вместо них квадратики(. как это исправить?
← →
_Shuler_ (2008-01-20 08:31) [2]забейте)))
← →
korneley © (2008-01-20 12:29) [3]Может дело в том, что readln() ждёт два символа в конце строки: "возврат каретки" и "перевод строки", т.е. #13#10 (или ^M^J), а в тексте, скопированном из ворда присутствует только #10 (он-то и отображается квадратиком) Используй для построчной записи в файл writeln() для каждой строки, а не write() на весь буфер, тогда как запишешь, так и прочитаешь.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.042 c