我有一個txt文件,我讀它。 這就是它說:在JAVA中讀取文件,等於不起作用
CONTRACT
{
CODE 1
SERVICE "Pro"
NAMESURNAME "Takis Papadopoulos"
PHONENUMBER 6980021739
DATE "19/3/2007"
TYPE Internet
DISCOUNT 10
MONTHLY_USAGE{
MB_USED 200
}
}
我創建了一個BufferedReader,我用線= read.readLine()方法。但問題是,當談到這段代碼:
if(line.trim().startsWith("SERVICE ")){
tmp_service = line.trim().substring(8);
System.out.println(tmp_service);//Prints "Pro"
if(tmp_service.equals("Pro")){
System.out.println("1");//Never gets in
}else if(tmp_service.equals("Internet Family")){
System.out.println("2")
}else{
System.out.println("3");//Prints this
}
count++;
System.out.println(tmp_service);//Prints "Pro"
}
它始終打印「3」,即使平等應該是「真實的」事實並非如此。我也嘗試過「startsWith()」,但它也不起作用。
請提供一個[mcve]而不是片段,這樣可以更容易地幫助你,這個問題對未來的讀者有更多的價值 –
引導和不可見的空白怎麼樣?也許'tmp_service'包含'「Pro」 '? –
如果格式是alwa ys相同的正則表達式或一些string.split,你可以將所有這些轉換成對象。甚至檢查格式並設置默認值。 –