我想讀取一個文件並逐行分割字符串的行。這是文件中的示例字符串避免數組索引超出綁定異常,而拆分字符串
Decorative Platters--------Home & Kitchen->Home & Décor->Home Décor Accents
Hookah--------Watches & Jewellery->Fashion Jewellery->Bangles
hookah--------
在這種情況下,第三行在點後沒有任何內容。
private static void getCategoriesFromFileAndMAtch() {
try {
BufferedReader br=new BufferedReader(new FileReader("mapping_log"));
String eachLine;
while((eachLine = br.readLine()) != null)
{
String input1, input2, tempString;
input1=eachLine.split("--------")[0];
tempString=eachLine.split("--------")[1];
if(!(eachLine.split("--------")[1].isEmpty()))
{
tempString=eachLine.split("--------")[1].split("::=>")[0];
System.out.println(input1+" "+tempString);
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
因爲[1]的值爲空我收到異常並且程序停止。我怎樣才能避免這種情況?我檢查它是否爲空或不在if循環中。這還不夠嗎?
我想你想'如果(eachLine.split(「--------」)。長度> 1)'那裏 - 'length'是數組的屬性,而不是方法。 (太小的修復提交編輯。) – Ben 2014-12-03 05:49:39
@本,謝謝!我修好了它。 – merlin2011 2014-12-03 05:55:55