Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Pascal] Запись и чтение из файла. 
V
    Опции темы
Neolamer
  Дата 4.2.2007, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Когда я пытаюсь записать данные, путём интерактивного ввода из программы в файл, в файле получается тарабарский язык и из-за этого они следовательно не могут быть использованы прогой или выведены на экран в чом трабл?Мне надо срочно прогу написать а как я проверю её работоспособность??
PM MAIL   Вверх
Strannik
Дата 4.2.2007, 18:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 25.1.2007

Репутация: 1
Всего: 2



Как ты в файл выводишь? Код напиши.
PM MAIL   Вверх
skyboy
Дата 4.2.2007, 18:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 5
Всего: 260



Neolamer, ты писал в файл программой, скомпиленной Turbo Pascal'ем или Borland Pascal'ем, что почти одно и то же? А смотреть пытаешься виндовым блокнотом? тогда ничего удивительного нет - это несоответствие кодировок: паскаль-программа сохраняет  текст в cp866, а блокнот отображает по умолчанию - в ср1251. Если надо в блокноте читать текст в dos-кодировке выбери соответствующий шрифт(Формат-Шрифт - выбрать любой шрифт без символов "О" или "Тт" слева: Terminal, System или другие). Если же проблема не в отображении - и в самом деле, не помешало бы привести код и поподробнее описать  условия возникновения бага...
PM MAIL   Вверх
Neolamer
Дата 4.2.2007, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Код

uses crt;
type
recfile=record (*Zapis dannih po sborshikam*)
fam:string[15];
d1,d2,d3,d4,d5,d6:word;
end;
var
i:integer; (*Nomer zapisi*)
buf:recfile;
f:file of recfile;
begin
clrscr;
assign(f,'sbor.txt');
rewrite(f);
writeln('Vvedite dannie po sborshikam:');
for i:=1 to 5 do
begin
write('Familia-> '); readln(buf.fam);
write('Chislo isdelii sobranih v ponedelnik-> '); readln(buf.d1);
write('Chislo isdelii sobranih vo vtornik  -> '); readln(buf.d2);
write('Chislo isdelii sobranih v sredu     -> '); readln(buf.d3);
write('Chislo isdelii sobranih v chetverg  -> '); readln(buf.d4);
write('Chislo isdelii sobranih v piatnicu  -> '); readln(buf.d5);
write('Chislo isdelii sobranih v subbotu   -> '); readln(buf.d6);
write(f,buf);
end;
close(f);
readkey;
end.

Я ввожу данные в файл, а они не выводятся на экран. В чом трабл?
PM MAIL   Вверх
Winprogrammer
Дата 4.2.2007, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



Neolamer, млин!!!! Нельзя было сделать по-человечески(вывести код со структуризацией)?!

Добавлено @ 19:24 
Паскаль не понимает так: write(f,buf);, т.к. buf - это запись. Нужно просто выводитькаждый элемент этого класса по-отдельности. Та же проблема и с файлом. Туда записывается запись, а нужно писать элемент записи.
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
volvo877
Дата 4.2.2007, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 34
Всего: 116



Цитата(Winprogrammer @  4.2.2007,  18:17 Найти цитируемый пост)
Паскаль не понимает так: write(f,buf);, т.к. buf - это запись. 
Правда? А то, что это файл записей, а не текстовый, тебе ни о чем не говорит?

Neolamer, вот тебе и ответ твой на вопрос... Ты записываешь машинное представление данных, а прочитать хочешь текстовое? Так не бывает... Как пишешь, так и прочтешь. Так что, придется описать файл как текстовый, и записывать в него данные...
PM MAIL   Вверх
Neolamer
Дата 4.2.2007, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Цитата(Winprogrammer @ 4.2.2007,  19:17)
Neolamer, млин!!!! Нельзя было сделать по-человечески(вывести код со структуризацией)?!

Добавлено @ 19:24 
Паскаль не понимает так: write(f,buf);, т.к. buf - это запись. Нужно просто выводитькаждый элемент этого класса по-отдельности. Та же проблема и с файлом. Туда записывается запись, а нужно писать элемент записи.

сп, буду дальше думать теперь проблема в том чтоб выводить все записи по сборщикам, а то выводится запись последнего сборщика
PM MAIL   Вверх
Winprogrammer
Дата 4.2.2007, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



Цитата(Neolamer @  4.2.2007,  19:34 Найти цитируемый пост)
все записи по сборщикам, а то выводится запись последнего сборщика 

?????????????

Добавлено @ 19:40 
Тебе нужен текстовый файли или можно и можно типизированный?
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Neolamer
Дата 4.2.2007, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Цитата(Winprogrammer @ 4.2.2007,  19:37)
Цитата(Neolamer @  4.2.2007,  19:34 Найти цитируемый пост)
все записи по сборщикам, а то выводится запись последнего сборщика 

?????????????

Добавлено @ 19:40 
Тебе нужен текстовый файли или можно и можно типизированный?

Да любой мне нужно просто до завтра прогу успеть написат вот эту прогу.
Создать файл содержащий сведения о количестве изделий, собранных сборщиками цеха за неделю. Каждая запись содержит поля: фамилия сборщика, количество изделий собранных им ежедневно в течение шестидневной недели, т.е. раздельно понеделник, вторник и т.д.
   б)Написать прогу с использованием процедур, выводящую следующую информацию: фамилию сборщика и общее количество деталий, собранное им за неделю, фамилию сборщика собравшего наибольшего наибольшее число деталий и день, когда он достиг наивысшей производительности труда. 
Иначе мне каюк мне её завтра в 11 надо будет защищать на комисии, не защищу вылечу нафиг из бга smile 

Это сообщение отредактировал(а) Neolamer - 4.2.2007, 19:54
PM MAIL   Вверх
Winprogrammer
Дата 4.2.2007, 19:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



я знаю как решить. наверно... через 5-10 минут выложу решение
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Neolamer
Дата 4.2.2007, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Цитата(Winprogrammer @ 4.2.2007,  19:55)
я знаю как решить. наверно... через 5-10 минут выложу решение

буду примного благодарен smile 
PM MAIL   Вверх
Winprogrammer
Дата 4.2.2007, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



Те надо на Turbo Pascal? или на Borland Pascal сойдет?
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Neolamer
Дата 4.2.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Цитата(Winprogrammer @ 4.2.2007,  20:05)
Те надо на Turbo Pascal? или на Borland Pascal сойдет?

на turbo pascal7
PM MAIL   Вверх
Winprogrammer
Дата 4.2.2007, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



хм. ща пошлю код на Borland Pascal, а там сам переделаешь
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Neolamer
Дата 4.2.2007, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 1.2.2007

Репутация: нет
Всего: нет



Цитата(Winprogrammer @ 4.2.2007,  20:10)
хм. ща пошлю код на Borland Pascal, а там сам переделаешь

А в чом разница этих языков?
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0556 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.