[Delphi] tablica z pliku txt

0

Jak odczytać dane z pliku txt i je wrzucić do dwu wymiarowej tablicy ?Przykładowy plik może wyglądać tak :

12 2345 12 334
134 123 23 4235
12 2345 122 383
335 453 78 62345

i żeby np liczba 23 byla w tab[2,1] ?

0

Może spróbuj tak:
Read(uchwyt_pliku, tab[1], tab[2], tab[3], tab[3]);

0

Może spróbuj tak:
Read(uchwyt_pliku, tab[1], tab[2], tab[3], tab[3]);

Chyba raczej tak:
ReadLn(uchwyt_pliku, tab[0], tab[1], tab[2], tab[3]); {Z jego opisu wynika, że numeruje od 0}

--
Jest jeszcze jeden błąd ... :)
--------Oficjalny kanał----------
Service for programmers w IRC:
Kanał: #4programmers.net
Serwer: warszawa.ircnet.pl
Sieć: POLNet
Port: 6667

0

Może spróbuj tak:
Read(uchwyt_pliku, tab[1], tab[2], tab[3], tab[3]);

Chyba raczej tak:
ReadLn(uchwyt_pliku, tab[0], tab[1], tab[2], tab[3]); {Z jego opisu wynika, że numeruje od 0}

Chyba raczej tak:

Readln(uchwyt_pliku, tab[0, nr_wiersza], tab[1 nr_wiersza], tab[2 nr_wiersza], tab[3 nr_wiersza]); {Z jego opisu wynika, że tablica jest 2-wymiarowa}

PP:P

--
Vogel [[email protected]]

Life is just a dream, you know...
[Cowboy Bebop]

0

Chyba raczej tak:

Readln(uchwyt_pliku, tab[0, nr_wiersza], tab[1 nr_wiersza], tab[2 nr_wiersza], tab[3 nr_wiersza]); {Z jego opisu wynika, że tablica jest 2-wymiarowa}

Skoro już się tak prześcigamy to:
var
w: Byte;
begin
for w := 0 to 3 do
ReadLn(UchwytPliku, Tab[0, w], Tab[1, w], Tab[2, w], Tab[3, w]);
end;

I mamy całą tablicę 4x4 ;-) (potrzeba nam jeszcze tylko uchwytu pliku)

--
Jest jeszcze jeden błąd ... :)
--------Oficjalny kanał----------
Service for programmers w IRC:
Kanał: #4programmers.net
Serwer: warszawa.ircnet.pl
Sieć: POLNet
Port: 6667

0

Skoro już się tak prześcigamy to:
var
w: Byte;
begin
for w := 0 to 3 do
ReadLn(UchwytPliku, Tab[0, w], Tab[1, w], Tab[2, w], Tab[3, w]);
end;

I mamy całą tablicę 4x4 ;-) (potrzeba nam jeszcze tylko uchwytu pliku)

Chyba nie masz racji. Zauważ , że "Anonim" napisał
i żeby np liczba 23 byla w tab[2,1] ?
Chyba mu chodziło o jakąś założoną , ale nie prostą kolejnosć wpisywania danych.
A wiec chyba jedynie
ReadLn(UchwytPliku,Tab[nr_kolumny,nr_wiersza],Tab[nr_kolumny,nr_wiersza]..............Tab[nr_kolumny,nr_wiersza];
Aby prościej trzeba by załozyć jakiś algorytm przypisania, ale tego nie znamy :-(

--
Pzdr.
W.

0

Chyba nie masz racji. Zauważ , że "Anonim" napisał
i żeby np liczba 23 byla w tab[2,1] ?
Chyba mu chodziło o jakąś założoną , ale nie prostą kolejnosć wpisywania danych.

Przecież w ten sposób 23 wyląduje w komórce 2,1 :)
Policz sobie wiersze i kolumny od 0:
0 1 2 3
0 12 2345 12 334
1 134 123 23 4235
2 12 2345 122 383
3 335 453 78 62345

--
Jest jeszcze jeden błąd ... :)
--------Oficjalny kanał----------
Service for programmers w IRC:
Kanał: #4programmers.net
Serwer: warszawa.ircnet.pl
Sieć: POLNet
Port: 6667

0

Przecież w ten sposób 23 wyląduje w komórce 2,1 :)
Policz sobie wiersze i kolumny od 0:
0 1 2 3
0 12 2345 12 334
1 134 123 23 4235
2 12 2345 122 383
3 335 453 78 62345

Sorry.Masz rację, mój błąd.Zasugerowałem się liczeniem od 1 a nie od 0

--
Pzdr.
W.

0

no nie wiem może cos takiego... hehe:

var
nra: array[1..100] of Integer;
data: array[1..100] of string;
tem: array[1..100] of string;
liczba1: array[1..100] of Integer;
liczba2: array[1..100] of Integer;
liczba3: array[1..100] of Integer;
liczba4: array[1..100] of Integer;
liczba5: array[1..100] of Integer;
liczba6: array[1..100] of Integer;
plik: textfile;
sciezka, linia: string;
ile,now,id,id2: integer;
begin
sciezka := './baza.txt';
AssignFile(plik, sciezka);
Reset(plik);
now:=1;
id:=1;
id2:=1;
while not Eof(plik) do
begin
Readln(plik, linia);
ile := Length(linia)+1;
while (now

0

no nie wiem może cos takiego... hehe:
....
chyba jest tu trochę niepotrzebnych rzeczy ale nie chce mi się tego poprawiać... ;)

Bardziej nakombinować nie mogłeś (zwłaszcza ze strukturami danych)

--
Jest jeszcze jeden błąd ... :)
--------Oficjalny kanał----------
Service for programmers w IRC:
Kanał: #4programmers.net
Serwer: warszawa.ircnet.pl
Sieć: POLNet
Port: 6667

1 użytkowników online, w tym zalogowanych: 0, gości: 1