Форум русскоязычного сообщества Ubuntu


Автор Тема: [Решено]FPC- проблема при создание файла!  (Прочитано 1687 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Noks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Поставил FPC и Lazarus. При создание файла (к примеру вот doc.txt)  и после того как я пишу в него нужные мне данные (компилируя код программы) возникает очень плохой
трабл.  :(   (компилировал как и в паскале так и в лазарусе)
При открытие ( doc.txt)   gedit матерится что не может его прочитать.  

Так в чем суть? И как мне писать с файлами?  Открытие файла и просмотр содержимого обязательно.    

Танцы с бубном типа на приоритеты кодировок вроде как пытался делать . но бесполезно.
На виртуалке(xp) же просто сообщение мол места нет (error 101)

Прошу помочь!
« Последнее редактирование: 13 Апреля 2011, 16:18:37 от Noks »

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5548
  • Все по палатам!
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #1 : 13 Апреля 2011, 00:39:38 »
Учи матчасть... Для другого совета информации в сообщении нет.
Извините, я все еще учусь

Оффлайн Noks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #2 : 13 Апреля 2011, 00:42:49 »
Благодарочка, я учту.

Возможно ли вообще под ubuntu в freepascal файлы изучать?

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #3 : 13 Апреля 2011, 08:17:58 »
Что к чему из исходного сообщения не понятно.
Теперь еще раз на русском изложи суть дела: что сделал что получил что хотел получить.
С примерами кода и обработкой ошибок.

И проверь права доступа.

Да, это возможно. Изучать можно даже без freepascal: берешь файл и изучаешь его. В чем проблема?

Оффлайн Noks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #4 : 13 Апреля 2011, 13:15:49 »
Установил Freepascal.
Есть тема "Обработка файлов средствами Free Pascal"
Написал код
type
price = record
rub: 0..maxint;
kop: 0..99;
end;
myfile=file of price;
var
f1:myfile;
A,prise:Price;
n,i,j:integer;
const
[color=red][font=Verdana]name = '/home/noks/doc.txt';[/font][/color]

procedure min(F:string;var prise:price);

var
  Z:price;
begin
prise.kop:=99;
prise.rub:=maxint;
  assignfile(f1,f);
{$i-}
reset(f1);
{$i+}
if IOresult <>0 then
  else
  begin
    while not eof(f1) do
begin
  read(f1,z);
  if z.rub*100+z.kop<prise.rub*100+prise.kop then
    Prise:=z;
end;

  end;
end;

{$IFDEF WINDOWS}{$R like.rc}{$ENDIF}

begin
if main then
clrscr;
assignfile(f1,name);
{$i-}
rewrite (f1);
{$i+}
if IOresult <>0 then
Writeln('такого файла нету')
else writeln('файл открыт для записи');
writeln('------------------------------------------------') ;
writeln('введите количество цен: ');
Readln(n);
writeln('Введите цену');
For i:=1 to n do
begin
with A do
begin
write('Рублей:');
Readln(rub);
Write('Копейок:');
readln(kop);
write(f1,A);
end;
end;
reset(f1);
while not eof(f1) do
ва  read(f1,a);
  writeln(a.rub,',',a.kop)
end;
min(name,prise);
writeln('минимальная цена:',prise.rub,',',prise.kop);
 Closefile(f1);
end.                                              

Работает отлично. Пишет и читает.  
При открытие   файла cat doc.txt   выводит DD�DDDD в общем кракозябры.
При попытке открыть в текстовом формате   doc.txt  Редактору gedit не удалось определить кодировку символов.
Возможно, вы пытаетесь открыть двоичный файл.
Выберите кодировку из меню и попробуйте ещё раз.

---------------------------------------------------------------------------------------------------------------------
Проблема вроде ясна. Файл является типизированным и потому и не открывается.
Ну можно ли его все таки открыть и посмотреть содержимое  ?

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5548
  • Все по палатам!
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #5 : 13 Апреля 2011, 13:21:08 »
Что пишешь в файл, то и читаешь, как видно из листинга. Пишите по английски и будет работать.
Извините, я все еще учусь

Оффлайн Noks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #6 : 13 Апреля 2011, 13:33:43 »
спасибо.
но в файл пишу только эти значения:  rub: 0..maxint;   kop: 0..99;
которые являются только цифрами.

В листинге не отобразились только подсказки.     
-------------------------------------------------------------------------------------------------------------------------------------------------------------
типизированные файлы  заканчиваются специальным символом «конец файла», хранятся в двоичном виде, со-
держимое подобных файлов нельзя просмотреть обычным текстовым редактором.     
-------------------------------------------------------------------------------------------------------------------------------------------------------------
возможно я уже сам ответил на свой вопрос.. но опять же интересно как-то его открыть.

Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5548
  • Все по палатам!
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #7 : 13 Апреля 2011, 13:46:18 »
но опять же интересно как-то его открыть.
Любым 16-тиричным редактором/вьювером
Извините, я все еще учусь

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #8 : 13 Апреля 2011, 14:24:46 »
Noks, гений! от того что ты файл назвал txt он текстовым не станет.
Ты пишешь в него двоичные данные. Там и лежат двоичные данные.
Вот предствь фильм в контейнере mkv. когда ты его переименовываешь в txt тебе же комп не делает пересказ содержимого фильма на чистом русском языке.

тебе нужен file of text и пользоваться текстовыми вариантами функций чтения записи, реализовать свою текстовую сериализацию десериализацию данных.

Оффлайн Noks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: FPC- проблема при создание файла!
« Ответ #9 : 13 Апреля 2011, 16:18:12 »
спасибо. 
Попробую редактор.

Я это все прекрасно понял. Создал txt потому что хотел следить за ним. (там весомых критерий нету на счёт этого)

тебе нужен file of text и пользоваться текстовыми вариантами функций чтения записи, реализовать свою текстовую сериализацию десериализацию данных.

В условие по умолчанию задается типизированный     " File of price"

[решено] 

 

Страница сгенерирована за 0.042 секунд. Запросов: 25.