我是Java新手,目前正忙於一些學校工作。 我的程序正在用輸入文件讀取行。 如果我輸入文件具有類似如何從輸入文件中提取十進制數?
「奧維的畝,114.8 43801」
行我必須打破文字,雙,整成獨立的部分。 我的名字部分已完成,但卡在數字部分。
我該如何提取114.8,然後只是43801? 我一次只需要一個數字。 最後我需要將114.8分成43801.然後到下一行。
Scanner fileInput = new Scanner(inFile);
fileInput.useDelimiter("\\D+");
double i=0;
while (fileInput.hasNextDouble()){
i=fileInput.nextDouble(); // get int
System.out.println(i);
}
我試過,但它打印出 114.0 8.0 43801.0
正如你所看到的,十進制數是不正確的,我只需要一個號碼在同一時間。
你嘗試小寫'D'? (用於數字) - 如'fileInput.useDelimiter(「\\ d +」);' – ochi
剛剛嘗試過,輸出爲空。謝謝你的迴應。 – Jying11
如果您有小數點,請嘗試使用'fileInput.hasNextFloat()'和'nextFloat()'而不是double – ochi