Проблема со считыванием данных из файла

Тема в разделе "Delphi - FAQ", создана пользователем romen, 21 дек 2009.

  1. romen

    romen Гость

    Репутация:
    0
    Здравствуйте!
    Столкнулся с проблемой... Задача тривиальна - в *.txt файле дан ряд в одну строку дробных чисел, к примеру:

    0 0.1 1 0.777 0.5

    Задача - как считать из него данные и занести в двумерный массив? Кол-во строк, столбцов - дано изначально. В общем, пишу так:

    Код (Text):
    F: File of Real;
    cmas: array [1..1000,1..1000] of Real;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    stk:=StrToInt(Edit1.Text); // кол-во строк
    stb:=StrToInt(Edit2.Text); // кол-во столбцов

    AssignFile(F,'INPUT.txt');
    Reset(F);
    While not eof(F) do
    begin
    for i:=1 to stk do
    begin
    for j:=1 to stb do Read(F,cmas[i,j]);
    end;
    end;
    А он ничего не читает...
    Помогите, пожалуйста, разобраться...
     
  2. hosm

    hosm * so what *

    Репутация:
    0
    Регистрация:
    18 май 2009
    Сообщения:
    2.445
    Симпатии:
    8
    Я не помню - точно ли для текстовых данных надо описать типизированный файл (F: File of Real;)
    может, просто F:text;


    Добавлено: sax_ol
    ты такое спрашиваешь :RTFM:
     
  3. romen

    romen Гость

    Репутация:
    0
    sax_ol, он говорит про несоответствие форматов.

    OKEN, пробовалось. То же самое.
     
  4. xKlonx

    xKlonx Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 сен 2009
    Сообщения:
    411
    Симпатии:
    0
    romen
    Про дебагер ув.romen видно точно не слышал.Почитайте про дебагер это очень полезная штука
    http://ru.wikipedia.org/wiki/%D0%9E%D1%82%...%87%D0%B8%D0%BA
     
  5. romen

    romen Гость

    Репутация:
    0
    Вместо того, чтобы посылать в википедию, помочь-то можете, или не можете разобраться?
    Я следил за изменениями элементов массива, они все обнуляются.
     
  6. romen

    romen Гость

    Репутация:
    0
    Если сделать просто File, он ругается на то, что у меня элементы массива определены, а там нет. Совсем запутался :RTFM:
     
  7. romen

    romen Гость

    Репутация:
    0
    Думал, там построчно и в charах все считывается :RTFM: Разобрался, я совсем не то оказывается считывал и текстовый файл не так заполнен) Оплошался ;)
     
  8. Mun2

    Mun2 Гость

    Репутация:
    0
    и еще...

    Код (Text):
    begin
    for i:=1 to stk do
    begin
    for j:=1 to stb do Read(F,cmas[i,j]);
    end;
    end;
    счет элементов массивов обычно ведется с 0 , а не с 1.
     
Загрузка...

Поделиться этой страницей