Forum » Programiranje » [Java]Dodajanje v LinkedList iz datoteke
[Java]Dodajanje v LinkedList iz datoteke
alexa-lol ::
hej
mene nekaj zanima...
imam file.txt z vsebino
1 2 3 4
2 5 6 8 7
Kako bi najlažje posamezno vrstico dodal v posamezen LinkedList?
(Privzemimo, da ima file.txt vedno dve vrstici)
hvala
lp
imam file.txt z vsebino
1 2 3 4
2 5 6 8 7
Kako bi najlažje posamezno vrstico dodal v posamezen LinkedList?
(Privzemimo, da ima file.txt vedno dve vrstici)
hvala
lp
alexa-lol ::
ok sem nasel resitev, a je grda. Prepričan sem, da obstaja bolj elegantna rešitev. Če je kdo pozna naj jo prosim prilepi.
rešitev:
rešitev:
import java.io.*;
import java.util.LinkedList;
public class File{
public static void main(String[] args) throws IOException {
LinkedList<Integer> list1 = new LinkedList<Integer>();
LinkedList<Integer> list2 = new LinkedList<Integer>();
BufferedReader br = null;
String string;
int counter = 0;
try {
br = new BufferedReader(new FileReader("C:\\Input\\file.txt"));
while ((string = br.readLine()) != null){
if(counter==0){
list1 = stringToLinkedList(string);
}
else{
list2 = stringToLinkedList(string);
}
counter++;
}
}
finally {
br.close();
}
printList(list1);
System.out.println();
printList(list2);
}
public static LinkedList<Integer> stringToLinkedList(String string){
String delimiter = " ";
String[] temp;
LinkedList<Integer> list = new LinkedList<Integer>();
temp = string.split(delimiter);
for(int i = 0; i < temp.length; i++){
list.add(Integer.parseInt(temp[i]));
}
return list;
}
public static void printList(LinkedList list){
for(int i = 0; i < list.size(); i++){
System.out.print(list.get(i) + " ");
}
}
} overlord_tm ::
Odpres file v BufferedReaderju, preberes vrstico, obesis nanjo Scanner, in potem dokler so podatki v vrstici (hasNext()) dodajas v linkedlist. Ponovis vajo na drugi vrstici.
Nuke_H2 ::
public static void dodaj(LinkedList seznam, File f){
BufferedReader br=new BufferedReader(new FileReader(f);
String vrstica;
Scanner sc;
while((vrstica=br.readLine())!=null){
sc=new Scanner(vrstica);
while(sc.hasNext()){
seznam.add(sc.next());
}
}
}
Neki tazga... Kodo sem pisal na pamet tako, da so možne napake :).
Lp Nuke_H2
Vredno ogleda ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | [C#] Razširitev Linked List-aOddelek: Programiranje | 1222 (888) | Ciklamen |
| » | [c#] SkladOddelek: Programiranje | 1799 (1659) | Spura |
| » | [c#] Ustvarjanje objekta v drugem razreduOddelek: Programiranje | 1781 (1726) | Cvenemir |
| » | Povezani seznamOddelek: Programiranje | 2276 (1873) | pohano |
| » | [c#] LinkedList branje poljubnega elementaOddelek: Programiranje | 1762 (1671) | FrEaKmAn |