我遇到了错误问题!我打开我的文件,我读了一行,然后我从StringTokenizer的行中获取信息
我的代码可以使用一行,但是当我尝试阅读另一行时,我得到了任何帮助的错误?
这是我的代码
try{
line = reader.readLine();
while(line!=null){
StringTokenizer st = new StringTokenizer(line,"\t");
timer=st.nextToken("\t");
int Itimer=Integer.parseInt(timer);
// System.out.println(Itimer);
what_to_do=st.nextToken("\t");
// System.out.print(what_to_do);
flightnumber=st.nextToken();
int Iflightnumber=Integer.parseInt(flightnumber);
// System.out.print(Iflightnumber);
departure=st.nextToken("\t");
// System.out.print(departure);
flighttime=st.nextToken("\t");
int Iflighttime=Integer.parseInt(flighttime);
// System.out.print(Iflighttime);
Key=new KeyFlight(Iflightnumber,Iflighttime);
flight=new Flight(Key,true);
if(what_to_do.equals("insert")){
// System.out.print("worked");
if(departure.equals("D")){
result=true;
}else{result=false;}
flight.setdeparture(result);//8a mporousa na kanw new flight alla gia e3ikonomisi to ekana me seter//
EV.insert(flight);
// System.out.println("worked again");
}else if(what_to_do.equals("cancel")){
EV.remove(Key);
}
else if(what_to_do.equals("update")){
EV.UpdateKey(flight, Key);
}
line=reader.readLine();
这些是错误线程中的异常" main" java.util.NoSuchElementException at java.util.StringTokenizer.nextToken(Unknown Source) at java.util.StringTokenizer.nextToken(Unknown Source) 在FlightSchedule.loadandStoreFile(FlightSchedule.java:54) 在FlightSchedule.main(FlightSchedule.java:13)
我写的不是最后一个reader.readLine(),line = null而且它起作用了
代码可以解决它的StringTokenizer问题
我的txt格式的考试 : 0 insert 370 D 425
答案 0 :(得分:1)
问题可能是,你正在寻找你的stringTokenizer上的标签“\ t”,也许你的数据之间的空间不是一个标签只是一个空格,试试更好的line.split(“\ s +”)