我試圖讓用戶輸入一個字符串,它既可以包含空格,也可以不包含空格。所以,我使用NextLine();我試圖用這個字符串搜索一個文本文件,因此我使用next()來存儲每個字符串,它通過掃描儀,我試過使用NextLine(),但它會佔用整個行,我只需要逗號前面的單詞。 到目前爲止,這裏是我的代碼如何在next()中包含空格而不使用nextLine()in Java
System.out.print("Cool, now give me your Airport Name: ");
String AirportName = kb.nextLine();
AirportName = AirportName + ",";
while (myFile.hasNextLine()) {
ATA = myFile.next();
city = myFile.next();
country = myFile.next();
myFile.nextLine();
// System.out.println(city);
if (city.equalsIgnoreCase(AirportName)) {
result++;
System.out.println("The IATA code for "+AirportName.substring(0, AirportName.length()-1) + " is: " +ATA.substring(0, ATA.length()-1));
break;
}
}
當用戶輸入不帶空格的字代碼工作,但是當他們輸入兩個詞,在條件不滿足。
該文本文件只包括一些機場,他們的國際航空運輸協會,城市和國家。下面是一個示例:
ADL, Adelaide, Australia
IXE, Mangalore, India
BOM, Mumbai, India
PPP, Proserpine Queensland, Australia
不知道你的最簡單的方法去這件事。你能發佈一個你想要解析的文件的樣本,你想保留什麼? – ghostbust555
我很確定我正在努力做到這一點,但我使用的是我認識的代碼,而且我仍然是初學者。 這是一個包含多行的文本文件,每行包含IATA代碼,城市和國家,如上所述。 Everyline是相同的,但不同的代碼,城市..等等。 我正在嘗試編寫一個提示用戶輸入機場名稱(城市)的軟件,編將搜索文檔並打印出IATA代碼。我已經完成了這個程序。 – user3319290
PS I(種類)通過分割輸入字符串解決了我的問題,然後添加if(字符串包含空格),然後將第一部分分配給字符串 然後我在條件中使用該字符串以僅比較第一個字,他們都是獨一無二的,所以我幾乎只有一個結果。 這就是我解決問題的方法,我非常確定這不是最佳的解決方案,但是嘿它對我有效:D感謝您的時間。 – user3319290