申し訳ありませんが、私は非常に小さなプログラムを持っていますので、テキストファイルの内容をテストするように取り組んでいます。 txtを作成し、別の空のファイルtestCopied.txtに入れます。私がこれらをもっと良く理解しようとしているので、ScannerとprintWriterを使いたいというトリックです。ここでJava IO:テキストファイルの内容をコピーして別のテキストファイルに入れます。
は私のコードは次のようになります。
import java.io.*;
import java.util.*;
public class CopyA
{
public static void main(String [] args)
{
String Input_filename = args[0];
String Output_filename = args[1];
char r = args[2].charAt(0);
try
{
Scanner sc = new Scanner(new File(Input_filename));
FileWriter fw = new FileWriter(Output_filename);
PrintWriter printer = new PrintWriter(fw);
while(sc.hasNextLine())
{
String s = sc.nextLine();
printer.write(s);
}
sc.close();
}
catch(IOException ioe)
{
System.out.println(ioe);
}
}
}
これはコンパイルが、私はtestCopied.txtを見たとき、それはまだ白紙であり、それに転送test.txtというのコンテンツを持っていません。私は間違って何をしていますか? Java IOはかなり混乱しているので、私はそれをよりよく理解しようとしています。どんな助けも本当にありがとう!
最後に 'finally'ブロックで' PrintWriter'を終了してください。これにより、ライターはその内容をフラッシュし、すべてをファイルに書き出します。また、各行を終了する必要があります。そうしないと、新しいファイルはすべて1行になります。 – Zircon
@ Zirconどのように各行を終了しますか?ここで使用されるwhileループの形式ですか、別のJava IO固有のものが必要ですか? –