Форум программистов, компьютерный форум, киберфорум
Наши страницы
Free Pascal
Войти
Регистрация
Восстановить пароль
 
de15
0 / 0 / 0
Регистрация: 05.01.2014
Сообщений: 3
1

Читает в текстовом файле число, которого там нет

05.01.2014, 01:39. Просмотров 309. Ответов 4
Метки нет (Все метки)

Уважаемые, прошу помощи:
Вот код
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var
  Fout,Fin:text;
  i:integer;
begin
  i:=1;
  Assign(Fout,'police');
  Assign(Fin,'police1');
  Reset(Fout);
  Rewrite(Fin);
  while not Eof(Fout) do begin
    Read(Fout,i);
    Writeln(Fin,i);
  end;
  Close(Fin);
  Close(Fout);
end.
Файл из которого программа читает числа содержит последовательность:
432 525 323
543 535 245
765 967 465
(именно в такой записи по три числа в строке)

Файл в который программа производит запись по окончании программы приобретает вот такой вид:
432
525
323
543
535
245
765
967
465
0

Я не могу понять откуда берется этот ноль!
Прошу помощи и заранее спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2014, 01:39
Ответы с готовыми решениями:

Найти минимальное число в текстовом файле
Задача найти минимальное число в текстовом файле. В таком варианте выводит min=0 var T : text; ...

Определить число знаков препинания в текстовом файле
Доброго времени суток! Дан текстовый файл, определить число знаков препинания, используемых в...

Подсчитать в текстовом файле число строк, состоящих из одинаковых литер
составить программу подсчета в текстовом файле числа строк,состоящих из одинаковых литер.

Разработать программу, которая подсчитывает число слов в текстовом файле и собирает статистику
Разработайте программу, которая подсчитывает число слов в текстовом файле и собирает статистику...

В существующем файле, элементами которого являются числа, изменить на заданное число
В существующем файле, элементами которого являются числа, изменить на заданное число: а) первый...

4
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26519 / 17808 / 7048
Регистрация: 22.10.2011
Сообщений: 31,338
Записей в блоге: 6
05.01.2014, 02:26 2
После 465 в третьей строке файла присутствует переход на новую строку? Если его нет - то и нуля не будет (а если он есть - то EOF еще не показывает конец файла, поэтому осуществляется еще попытка чтения очередного числа, которая неудачна, поэтому в i возвращается 0, который и записывается во второй файл). Чтобы избавить себя от необходимости за этим следить - используй SeekEOF вместо простого EOF (тогда все пробельные символы перед концом файла просто не будут учитываться).
1
de15
0 / 0 / 0
Регистрация: 05.01.2014
Сообщений: 3
05.01.2014, 18:30  [ТС] 3
Дело в том что в исходящем файле нет перехода на следующую строку. Курсор останавливается сразу за последним символом последнего числа.
Использовал SeekEof и ноль пропал, спасибо!
В чем же может быть сложность? SeekEof который убрал ноль в конце как бы подразумевает, что переход на новую строку был? Но на самом деле его не было (ну, хотя бы на уровне видимых символов).
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26519 / 17808 / 7048
Регистрация: 22.10.2011
Сообщений: 31,338
Записей в блоге: 6
05.01.2014, 18:33 4
Цитата Сообщение от de15 Посмотреть сообщение
(ну, хотя бы на уровне видимых символов
Вот в этом часто и проблема. Чем проверялось? Блокнотом? Открой файл через Notepad++ и нажми кнопку "Показать все символы", с большой степенью вероятности увидишь скрытые CR/LF
1
de15
0 / 0 / 0
Регистрация: 05.01.2014
Сообщений: 3
05.01.2014, 20:13  [ТС] 5
Да, блокнотом.
Спасибо огромное, очень признателен!
0
05.01.2014, 20:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2014, 20:13

в текстовом файле дан текст: фамилия, имя, отчество. В новый текстовый файл вывести самое длинное число
в текстовом файле дан текст: фамилия, имя, отчество. В новый текстовый файл вывести самое длинное...

Найти самое длинное и самое короткое из всех слов, записанных в текстовом файле WORDS.DAT, и записать их в файле LANG и KURZ
Найти самое длинное и самое короткое из всех слов, записанных в текстовом файле WORDS.DAT, и...

Что добавить в код, чтобы текст в окне вывода появился в файле и сохранился там?
что добавить в код чтобы текст в окне вывода появился в файле и сохранился там? const n=9; var...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru