从文件读取 - 文件类型错误



我在阅读简单的文本文件时遇到问题,似乎无法弄清楚原因。 我以前做过这个,我不确定问题是什么。 任何帮助将不胜感激!

import java.io.File;
import java.util.Scanner;
public class CS2110TokenReader {
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        File theFile = new File("data1.txt");
        Scanner scnFile = new Scanner(theFile);
        try {
            scnFile = new Scanner(theFile);
        } catch (Exception e) {
            System.exit(1);
        }
        while (theFile.hasNext()) {
            String s1 = theFile.next();
            Double d1 = theFile.nextDouble();
            System.out.println(s1 + "   " + d1);
        }
    }
}

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
    The method hasNext() is undefined for the type File
    The method next() is undefined for the type File
    The method nextDouble() is undefined for the type File
    at CS2110TokenReader.main(CS2110TokenReader.java:20)

它甚至不会扫描下一行。 这就是我的目标。 扫描和阅读。

while (theFile.hasNext()) {  // change to `scnFile.hasNext()`
    String s1 = theFile.next();  // change to `scnFile.next()`
    Double d1 = theFile.nextDouble();  // change to `scnFile.nextDouble()`
    System.out.println(s1 + "   " + d1);
}

您正在File引用上调用Scanner类的方法。在所有调用中将theFile替换为scnFile

其次,您正在调用next()nextDouble(),但只检查一次hasNext()。这可能会让你在某个时间点NoSuchElementException。在实际阅读之前,请确保您有要阅读的输入。

相关内容

  • 没有找到相关文章