在Java中似乎有多种执行I / O的方法。一个人如何决定使用哪个。
例如:
我可以通过以下两种方式通过stdin接受用户的输入:
方法1:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = "";
try{
System.out.println("Enter: ");
input = br.readLine();
}catch(IOException e)
{
e.printStackTrace();
}
方法2:
Scanner sc = new Scanner(System.in);
System.out.println("Enter Scanner: ");
input = sc.nextLine();
System.out.println(input);
我很确定可能还有其他读取输入的方法。选择用于特定类型的操作的方法时,有什么可遵循的准则(从文件,套接字,stdin中读取)
最佳答案
准则是您使用具有所需API的类。如果您只是阅读行,请按BufferedReader.readLine()
。如果您正在读取令牌并希望为您转换令牌,请Scanner
。如果要读取二进制数据,请DataInputStream
。如果要读取对象,请ObjectInputStream.readObject()
。如果您正在阅读XML,则为XML解析器。等等等等。如果您正在阅读Java,请JavaCC
;-)
关于java - 阅读Java中的下一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8175401/