用户输入文件控制台/命令行 - Java

nic*_*ius 12 java console file-io

Web上用于输入Java文件的大多数示例都是指固定路径:

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

控制台的用户输入文件怎么样?假设我希望用户输入文件:

System.out.println("Enter a file to read: ");

我有哪些选项(使用尽可能少的代码)来读取用户指定的文件以进行处理.一旦我有了文件,我可以转换为字符串等...我认为它与BufferedReader,Scanner,FileInputStream,DataInputStream等有关...我只是不确定如何结合使用这些得到最有效的方法.

我是初学者,所以我可能会错过一些简单的事情.但是我一直在弄乱这一段时间但现在无济于事.

提前致谢.

Rol*_*lig 20

要让用户输入文件名,有几种可能性:

作为命令行参数.

public static void main(String[] args) {
  if (0 < args.length) {
    String filename = args[0];
    File file = new File(filename);
  }
}
Run Code Online (Sandbox Code Playgroud)

通过要求用户输入:

Scanner scanner = new Scanner(System.in);
System.out.print("Enter a file name: ");
System.out.flush();
String filename = scanner.nextLine();
File file = new File(filename);
Run Code Online (Sandbox Code Playgroud)