Kezdőoldal » Számítástechnika » Programozás » JAVA: Fájlbeolvasás elemenként?

JAVA: Fájlbeolvasás elemenként?

Figyelt kérdés

Adott egy txt, abban soronként elmentve a versenyzők és az 5 mérkőzés eredményei (pl.: Kiss János;2;4;2;8;12)

A program célja az lenne, hogy egymás alá kell kiírnom a console-ba

(

Kiss János

2

4

2

8

12)

És így tovább a többi versenyzővel is. Addig sikerült megcsinálnom, hogy File függvénnyel egybe kiíratom soronként, de nekem ugy enem elég csak soronként, hanem ;-ként is muszáj.


Előre köszönöm!

(Nem feltétlen kész programot kérek, hanem azt a metódust/függvényt, amellyel megoldható a feltétel alapján való feldarabolás beolvasásnál.



2018. okt. 17. 17:28
 1/9 anonim ***** válasza:
Milyen fájlkezelési eszközt tanultok a suliban? (Scanner, BufferedReader,...)
2018. okt. 17. 18:07
Hasznos számodra ez a válasz?
 2/9 anonim ***** válasza:
100%

Erre gondoltal?


File file = new File("/tmp/results");

Scanner sc = new Scanner(file, "UTF8");

while (sc.hasNext()){

String line = sc.nextLine();

String[] elements = line.split(";");

for(String element : elements) {

System.out.println(element);

}

}

2018. okt. 17. 19:45
Hasznos számodra ez a válasz?
 3/9 anonim ***** válasza:
100%

BufferedReader br;

String line;


try {

br = new BufferedReader(new InputStreamReader( new FileInputStream(new File("textfile.txt"))));


while ((line = br.readLine()) != null) System.out.println(line.replaceAll(";", "\n") + "\n");


} catch (IOException e) { }

2018. okt. 17. 21:27
Hasznos számodra ez a válasz?
 4/9 A kérdező kommentje:
Köszönöm a segítséget!
2018. okt. 17. 21:46
 5/9 A kérdező kommentje:

Esetleg annyi lenne még a kérdésem, hogy hogyan lehet ezt egy 2D tömbbe lementeni?

Ugye a split függvénnyel String[] lesz a változó típúsa és nem engedi egy String[][]-be belerakni.

Azért szeretném a 2D tömböt, hogy tudjam melyik oszlopban vannak a nevek és az egyes sorszámű mérkőzések.

2018. okt. 17. 21:54
 6/9 anonim ***** válasza:
Öt elemet 2D tömbbe?
2018. okt. 17. 22:42
Hasznos számodra ez a válasz?
 7/9 anonim ***** válasza:

Ezt a 2D tömbös dolgot nem értem, hogy miért lenne könnyebb azzal dolgozni.

A JAVA tisztán OOP nyelv, ezért alkalmazd is: csinálj egy osztályt és annak a példányaiból csinálj egy kollekciót amiben az adatokat tárolod. A tagváltozók alapján tudni fogod, hogy melyik adatról van szó.

2018. okt. 18. 00:28
Hasznos számodra ez a válasz?
 8/9 A kérdező kommentje:

#6

Nem csak 5 elemről van sző. Több ilyen sor van a txt-ben (lsd.: Kiss János;2;4;2;8;12)

Úgy akarom, hogy a tömb első oszlopában a játékoson nevei, a többi 5 mérkőzés pedig szintén külön oszlopban. Így amikor hivatkozni akarok az egyik játékos mérkőzésére, tudom, hogy az első oszlopban keressem a játékost és ahanyadik sorban van, ahanyadik sorban lesz a saját mérkőzése (csak másik oszlopban).


#7

"...annak a példányaiból csinálj egy kollekciót" - ezt nem igazán értem.

2018. okt. 18. 18:56
 9/9 anonim ***** válasza:

Például egy ArrayListben tárolod el az objektumokat. Minden sor egy objektum adattagjait tartalmazza.


// Player.java

public class Player {

private String name;

private int result1;

private int result2;

private int result3;

private int result4;

private int result5;


public Player(String name, int result1, int result2, int result3, int result4, int result5) {

this.name = name;

this.result1 = result1;

this.result2 = result2;

this.result3 = result3;

this.result4 = result4;

this.result5 = result5;

}

// ...

}

2018. okt. 18. 21:33
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!