用户输入文件控制台/命令行-Java
web上用Java输入文件的大多数示例都涉及固定路径:用户输入文件控制台/命令行-Java,java,file-io,console,Java,File Io,Console,web上用Java输入文件的大多数示例都涉及固定路径: File File=new文件(“myfile.txt”) 控制台中的用户输入文件怎么样?假设我希望用户输入一个文件: System.out.println(“输入要读取的文件:”) 我有哪些选项(使用尽可能少的代码)来读取用户指定的文件以进行处理。一旦我有了这个文件,我就可以转换成字符串,等等。。。我认为这与BufferedReader、Scanner、FileInputStream、DataInputStream等有关。。。我只是不知道
File File=new文件(“myfile.txt”)代码>
控制台中的用户输入文件怎么样?假设我希望用户输入一个文件:
System.out.println(“输入要读取的文件:”)代码>
我有哪些选项(使用尽可能少的代码)来读取用户指定的文件以进行处理。一旦我有了这个文件,我就可以转换成字符串,等等。。。我认为这与BufferedReader、Scanner、FileInputStream、DataInputStream等有关。。。我只是不知道如何结合使用这些方法来获得最有效的方法
我是一个初学者,所以我可能会错过一些简单的东西。但我已经在这上面乱搞了一段时间了,但都没有用
提前感谢。使用java.io.BufferedReader
String readLine = "";
try {
BufferedReader br = new BufferedReader(new FileReader( <the filename> ));
while ((readLine = br.readLine()) != null) {
System.out.println(readLine);
} // end while
} // end try
catch (IOException e) {
System.err.println("Error Happened: " + e);
}
String readLine=”“;
试一试{
BufferedReader br=新的BufferedReader(新的文件阅读器());
而((readLine=br.readLine())!=null){
System.out.println(读线);
}//结束时
}//结束尝试
捕获(IOE异常){
System.err.println(“发生错误:+e”);
}
并用数据处理填充while循环
问候,,
要让用户输入文件名,有几种可能:
作为命令行参数
public static void main(String[] args) {
if (0 < args.length) {
String filename = args[0];
File file = new File(filename);
}
}
我认为在这种情况下不需要刷新:@HunterS:另一个问题提到了一些不需要刷新的情况。上面的代码不是其中之一,因此我决定最好是明确的。根据Javadoc,在这种情况下是必要的,因为字符串不包含\n
字符。
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);