Bu hatayı almaya devam ediyorum. Nedeni metin belgesinde bulunan sekmelerden kaynaklanıyordu. Ama anlayamıyorum!java ile metin dosyasında okuma (Sekmelerle)
girdi dosyası:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:907)
at java.util.Scanner.next(Scanner.java:1416)
at readFile.readFile(readFile.java:26)
at Tree.main(Tree.java:64)
İşte benim readFile sınıf için benim kodudur: Burada
Baker, William, Chavez, 04/01/05, 04/10/06
Sanchez, Jose, Chavez, 06/15/05,
Anderson, Robert, Wong, 04/02/05, 03/30/06
benim hatadır! Bunu anlayamıyorum
import java.io.*;
import java.util.*;
public class readFile {
private Scanner x;
public void openFile(){
try{
x = new Scanner(new File("patient.txt"));
}
catch (Exception e){
System.out.println("Couldn't find file!");
}
}
public void readFile(){
Tree tree = new Tree();
{
int key=0;
while(x.hasNext()){
String patientName = x.next();
String doctorName = x.next();
String currentApp = x.next();
String nextApp = x.next();
tree.addNode(key++, patientName, doctorName, currentApp, nextApp);
}
}
}
public void closeFile(){
x.close();
}
}
Bu yöntemler nerede denir? –
Örnek giriş dosyasının metnini gönderin. –
"Bir Tarayıcı, varsayılan olarak beyaz boşluklarla eşleşen bir sınırlayıcı desen kullanarak girişini tokenlere ayırır". Bu sizin için sorun olabilir, açık whitespaces ile deneyin ** veya ** bu belgede çalışmasını sağlamak için sınırlayıcıyı '\ t 'olarak ayarlayın. Ayrıca, bir sonraki öğenin gerçekten var olduğunu bilmediğinizde tarayıcınızda x.next() işlevini 4 kez aramayı sevmiyorum; bu, beklenmedik bir durum olduğunda yalnızca istisnalar atmanızı veya verileri karıştırmanızı istemektir. giriş formatı (bir hasta için 4 elemanlı çizgiler ve 3 elemanın bulunduğu 1 satır vardır, şu anda bunun için bir kontrol yapmazsınız.) –