logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Delphi] Jak wczytać dane z pliku txt i zapisać jako zmienne do wykresu?

bikemc 27 Mar 2008 13:38 4810 5
REKLAMA
  • #1 4960567
    bikemc
    Poziom 13  
    Posty: 137
    Ocena: 2
    Witam,
    Jakich funkcji/komend użyć by wczytać z pliku dane (txt) i zapisać jako zmienne i na ich podstawie opracować wykres? :(

    Dane z pliku tekstowego to na przykład:

    1 123
    2 365
    3 569
    4 657
    itd.

    Proszę bardzo o pomoc:(

    Moderowany przez Marek_Skalski:

    Poprawiłem temat. Zamykam.

  • REKLAMA
  • #2 4960613
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #3 4960654
    bikemc
    Poziom 13  
    Posty: 137
    Ocena: 2
    tylko ta pętla mi nie działa for:(
  • REKLAMA
  • REKLAMA
  • #5 4963028
    bikemc
    Poziom 13  
    Posty: 137
    Ocena: 2
    Czy TStringList działa z funkcją zakończenie pliku eof(plik) do?
    bo mi nie działa?:(
  • #6 4974247
    kleha
    Poziom 13  
    Posty: 112
    Pomógł: 3
    Ocena: 17
    Kawałek kodu jednego z moich programów. Mam nadzieję, że pomoże:

    
    
      if OpenDialog1.Execute then
      try
      begin
        wiersz := 0;
        AssignFile(Plik, OpenDialog1.FileName);
        Reset(Plik);
        FileMode := 0;  //Set file access to read only
          while not Eof(Plik) do
            begin
              wiersz := wiersz + 1;
              if wiersz > StringGrid1.RowCount -1 then
                begin
                StringGrid1.RowCount := StringGrid1.RowCount + 1;
                StringGrid1.ScrollBars := ssVertical;
                end;
    
              Read(Plik,a[wiersz],b[wiersz]);
              StringGrid1.Cells[0,wiersz] := FloatToStr(a[wiersz]);
              StringGrid1.Cells[1,wiersz] := FloatToStr(b[wiersz]);         
            end;
      end;
      CloseFile(Plik);
      except MessageDlg('Błąd wczytania danych.',mtInformation,[mbOk], 0);
      end;
    
    


    Wcześniej oczywiście należy zadeklarować potrzebne zmienne:
    
    
    var
      Plik: TextFile;
      a,b: Array [1..1111] of double;
      wiersz : integer;
    
    


    Dane w pliku tekstowym najlepiej oddzielić znakiem pojedynczej spacji.

    Na formatce powinieneś dodać OpenDialog (z zakładki Dialogs :) i oczywiście StringGrid'a. W zależności ile danych chcesz wczytać powinieneś zadeklarować odpowiednio duże tablice (w tym przykładzie są 2 tablice "a" i "b" po 1111 komórek typu zmienno-przecinkowego).
REKLAMA