try { Scanner sc = new Scanner(new File("testing.txt")); while (sc.hasNextInt()){ int i = sc.nextInt(); //timing.add(i); System.out.println(i); } sc.close(); }catch (FileNotFoundException e) { e.printStackTrace(); }
文本文件中确实包含int和字符串。我可以从文本文件中打印单词,但不能打印数字。
文本文件包括以下内容:
Michael 3000 7000 Bilbo 我喜欢2000号吗? 不,我喜欢9000
您的第一个值(“ Michael”) 不是 整数,因此它永远不会进入循环主体。
也许您想更改代码以使其循环播放,直到到达文件末尾,读取并打印整数,但使用(不打印)非整数值。所以像这样:
import java.util.*; import java.io.*; public class Test { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(new File("test.txt")); while (sc.hasNext()) { if (sc.hasNextInt()) { System.out.println(sc.nextInt()); } else { // Just consume the next token sc.next(); } } sc.close(); } }