繁体   English   中英

readfile来自文本文件元素java

[英]readfile in from text file elements java

我正在尝试读取.txt文件,但是当我使用调试器时它会被困在下一行? 我正在做一些逻辑错误吗? 它通过多个对象存储到一个数组中:

public static File readFileInfo(Scanner kb)throws FileNotFoundException


{
     System.out.println("Enter your file name");
      String name = "";
      kb.nextLine();
      name = kb.nextLine();
      File file = new File(name);
      return file;
   }

我传入的扫描仪是:

Scanner fin = null, kb = new Scanner(System.in);
  File inf = null;

  inf = FileUtil.readFileInfo(kb);
  fin = new Scanner(inf);

你在这里阅读两个不同的“文件”:

  • System.in标准输入 (或“终端”),用于询问用户文件名
  • 具有您从用户获得的名称的文件

当你调用name = kb.nextLine(); ,您要求参数(使用System.in构建的扫描仪)作为下一行。 通常,这将实际阻止(“挂起”),直到它从用户接收另一行输入(文件名)。 如果从命令行运行,请在该窗口中输入文本; 如果在IDE中运行,请切换到“控制台”选项卡并在其中输入。

正如上面提到的quazzieclodo,您可能只需要调用readLine一次。

之后,您可以根据readFileInfo返回的文件打开第二个扫描程序,然后您实际上正在按预期读取文本文件。

假设您的意图是使用Scanner读取文本文件:

 File file = new File("data.txt");

    try {
        Scanner scanner = new Scanner(file);
        while (scanner.hasNextLine()) {
            String line = scanner.nextLine();
            System.out.println(line);
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM