我可以使用扫描仪类的文本文件来获取信息?
-
21-08-2019 - |
题
此代码正确??
String note = "text.txt";
FileWriter file = new FileWriter(note);
Scanner sc = new Scanner(System.in);
System.out.println("Enter your name:");
String name = sc.next();
file.close();
如何传递此文件以程序作为命令行参数???
解决方案
好了,我个人从来没有使用FileWriter
因为它使用系统默认编码,这是做的大部分时间一个讨厌的事情。我喜欢FileOutputStream
+ OutputStreamWriter
。然而,话虽如此...
那你想传递的命令行参数?该文件的名称的?这很简单:
public static void main(String[] args)
{
// Insert error checking here (e.g. args.length == 0)
String note = args[0]; // For the first argument
// Rest of code here
}
如果这是的不的你是什么意思,请编辑您的问题进行澄清。
由标题来看,你可能会从一个文件而不是从System.in
想要的负载。在这种情况下,你只需要在File
对象传递,或InputStream
(如FileInputStream
)或实际上Readable
(如InputStreamReader
)。如果你打算在File
或InputStream
通过,我强烈建议你在字符编码名称传递也是如此。 (相当为什么需要它作为一个字符串而不是Charset
超越我,但是Java API基本上是非常糟糕的,当涉及到编码。)
不隶属于 StackOverflow