此代码正确??

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)。如果你打算在FileInputStream通过,我强烈建议你在字符编码名称传递也是如此。 (相当为什么需要它作为一个字符串而不是Charset超越我,但是Java API基本上是非常糟糕的,当涉及到编码。)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top