このコードは正しいですか?
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();
このファイルをコマンドライン引数としてプログラムに渡すにはどうすればよいですか?
このコードは正しいですか?
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
は、文字エンコード名も渡すことを強くお勧めします。(なぜそれをaではなく文字列として受け取るのかCharset
は私にはわかりませんが、Java APIは、エンコーディングに関しては基本的にかなり悪いです。)