• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wczytywanie danych z pliku do odzielnych zmiennych

Mały hosting, OGROMNE możliwości
0 głosów
471 wizyt
pytanie zadane 4 października 2020 w Java przez sobussss Początkujący (350 p.)
Witam,

mam pewien problem z wczytaniem danych z pliku do oddzielnych zmiennych. Plik przedstawia sie tak:

8 3

Jest to odzielone spacja. Jak zrobic, zeby "8" i "3" bylo w innej zmiennej.

Pozdrawiam i prosze o pomoc . :)

1 odpowiedź

0 głosów
odpowiedź 4 października 2020 przez Wiciorny Ekspert (283,260 p.)
  1. import java.io.File;  
  2. import java.io.FileNotFoundException;  
  3. import java.util.*;    
  4. public class ScannerNextExample2 {    
  5.      public static void main(String args[]) throws FileNotFoundException{   
  6.               //Declare File object  
  7.         File file = new File("/home/javatpoint/Desktop/ABHISHEK/AngularJS/Index/abc.txt");  
  8.         //Initialize the scanner  
  9.         Scanner scan = new Scanner(file);  
  10.         // iterate through the file line by line  
  11.         while(scan.hasNextLine()){  
  12.             //Print the contents of a file by line  
  13.             System.out.println(scan.next());  
  14.         }  
  15.         scan.close();  
  16.      }    
  17. }   

Scanner.next();   i wtedy wywołanie  wykonać na drugiej zmiennej.  Tworząc uprzednio 2 zmienne np, lub wczytywac do tablicy

https://www.javatpoint.com/post/java-scanner-next-method

po prostu w pętli wczytaj do zmienner pierwszej np 
 

zmienna1 = sc.next();
zmienna2= sc.next();

 

komentarz 4 października 2020 przez sobussss Początkujący (350 p.)

Dziekuje, a mam jeszcze jeden problem.

Tak wyglada plik.

12
6
–10
5
–1
4
8
–3
9
11
–40
6
18

Napisalem taki kod, ale nie moge odczytac tych danych, w ogole kompilaotr nie wchodzi do petli while, co zrobic w takiej sytuacji?

File plik2 =new File("In0103.txt");
Scanner scanner1=new Scanner(plik2);

int[] tab2=new int[12];
int suma=0,i=0;


while (scanner1.hasNext()) {
    System.out.println("Halo");
    tab2[i]=scanner1.nextInt();
    System.out.print( tab2[i] + " " );
    i += 1;

}

 

komentarz 4 października 2020 przez Wiciorny Ekspert (283,260 p.)

a sprawdzałeś czy dostęp do pliku masz w ogóle?  Spróbuj sobie samemu sprawdzić, czy w ogóle plik, do którego chcesz się dostać jest poprawnie ładowany. 
Np opakuj to w try catch 
Dla przykładu 
 


public static void main(String[] args) {
    File file = new File("10_Random");
    try {
        Scanner sc = new Scanner(file);

        while (sc.hasNextLine()) {
            int i = sc.nextInt();
            System.out.println(i);
        }
        sc.close();
    } 
    catch (FileNotFoundException e) {
        e.printStackTrace();
    }
 }
File plik2 =new File("In0103.txt");
Scanner scanner1=new Scanner(plik2);

Bo jeśli nie wchodzi do pętli to znaczy że 

scanner1.hasNext()

zwraca false. 

komentarz 5 października 2020 przez sobussss Początkujący (350 p.)
Try catch nie pokazuje zadnego bledu, nie wiem o co chodzi, bo moim zdaniem kod jest poprawnie napisany.

Podobne pytania

0 głosów
1 odpowiedź 476 wizyt
pytanie zadane 22 czerwca 2015 w C i C++ przez Chejron Początkujący (270 p.)
0 głosów
1 odpowiedź 1,825 wizyt
0 głosów
2 odpowiedzi 851 wizyt
pytanie zadane 9 maja 2019 w Java przez bastek Nowicjusz (190 p.)

93,718 zapytań

142,629 odpowiedzi

323,261 komentarzy

63,265 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...