質問内容
質問を評価する
(0ポイント)
|
Java初心者です。教えてください!
特定の行への書き込みを行いたいのですが、 以下のようにソースコードを書いたら、 test.txtの中身が全て消えてしまいました。
何故消えてしまったのでしょうか。 また、そうならないようにするにはどうすればいいのでしょうか。
誰か回答をお願いします!!
[ソース] import java.io.*;
public class Filewriter {
// 特定の行に書き込みをする。 public static void replace(LineNumberReader in, PrintWriter out, int lineNumber, String s) throws IOException {
String line; while ((line = in.readLine()) != null) { if (in.getLineNumber() == lineNumber) { out.println(s); } else { out.println(line); } } }
public static void main(String args[]) {
try { File f = new File("src/gamers/test.txt"); BufferedReader b = new BufferedReader(new FileReader(f)); LineNumberReader lnr = new LineNumberReader(b); PrintWriter pw = new PrintWriter(f); replace(lnr, pw, 4, "1 2 3 4 5 6 7 8 9 0"); pw.close(); lnr.close(); b.close(); } catch (Exception e) { System.out.println(e); }
} }
|