你好這個問題一直困擾我,因爲我一個星期到處搜索都是徒勞的。我有此代碼 ................while循環之外的語句被忽略?
while ((str = buff.readLine()) != null) {
String[] line = str.split(";");
String part1 = line[0];
String part2 = line[1];
String part3 = line[2];
String part4 = line[3];
String part5 = line[4];
if (c.equals(part3)) {
st = st + part1 + ";" + part2 + ";" + part3 + ";" + part4 + ";" + part5;
System.out.println(part1 + ";" + part2 + ";" + part3 + ";" + part4 + ";" + part5 + "\n");
fich1_tampon.write(st);
fich1_tampon.flush();
fich1_tampon.newLine();
++i;
}
}
System.out.println("F;" + i);
fich1_tampon.close();
buff.close();
}
了 「的System.out.println(」 F 「; + I);」被忽略,我不知道爲什麼。代碼很長,但基本上我正在尋找具有特定字符串並放在c中的行,並且正在將這些行寫入另一個文件中。 在我的控制檯上的結果是這樣的:
E; 2014/02/19 20:21:06 文件已存在。 N; 2000; PU;促進iphone; 232425
N; 2001; PU;促進戴爾; 232426
N; 2002; PU;促進三星; 23242
在線程異常 「主要的」 java LireFichierDecouper.decouper(LireFichierDecouper.java:70) at Main2.main(Main2.java:7) LireFichierDecouper中的第70行是「String part3 = line [2];」
PS:我對java和eclipse非常陌生,如果你想讓我發佈所有的代碼,使它更清晰,我會的。
如果您可以先更明智地格式化該代碼,它將*真的*幫助。如果您使用的是IDE,請執行此操作。這會讓它變得更容易,更容易看到發生了什麼。如果你能把這個減少到一個簡短但完整的程序來證明這個問題,那也會有幫助。我強烈懷疑,當你這樣做時,你會發現這個問題。 –
嘗試調試。唯一能防止'System.out.println(「F;」+ i)''被執行的東西是早期行中的一個例外(或者如果你從樣本中省略了某些東西) – Taylor
最好的程序員使用不一致編程時縮進。 | = ^] –