2016-10-17 6 views
0

何をすべきか...私はの.javaドキュメントをロードする方法を把握しようと出てテキストドキュメントに入れています.txtの文書

を.javaファイルを変換:

Javaソースファイルを開き、行番号を追加するプログラムを作成し、 は結果を新しいファイルに保存します。行番号は、 がソースファイルのさまざまな行を示す番号です。 特定の行に誰かの注意を引こうとするときに便利です(たとえば、 「行4にバグがあります」)。プログラムは、ユーザーに を入力してファイル名を入力して開き、各行を出力先の に保存し、各行の先頭に行番号を付加します。 その後、出力ファイルの名前を表示します。出力ファイルの名前は、入力ファイルに基づいて '。' '_'、 と ".txt"が最後に追加されました。 (ヒント:テキストファイルを保存するためにPrintWriter オブジェクトをpwという名前で使用している場合は、 "pw.printf("%03d "、x);"は先行ゼロ。)

text.javaのような奇数ラインでテキスト文書に出力する必要がある:

001パブリッククラスドッグハウス{

002のpublic static無効メイン(文字列[] args){

003などです。 ..

import java.io.*; 

    public class dogHouse { 
     public static void main(String [] args) throws IOException { 

      // The name of the file to open. 
      String fileName = "test.java"; 

      // This will reference one line at a time 
      String line = null; 

      try { 
       // FileReader reads text files in the default encoding. 
       FileReader fileReader = 
        new FileReader(fileName); 

       // Always wrap FileReader in BufferedReader. 
       BufferedReader bufferedReader = 
        new BufferedReader(fileReader); 

       while((line = bufferedReader.readLine()) != null) { 
        System.out.println(line); 
       } 

       // Always close files. 
       bufferedReader.close();   
      } 

      // The name of the file to open. 
      finally { 
       // Assume default encoding. 
       FileWriter fileWriter = 
        new FileWriter(fileName); 

       // Always wrap FileWriter in BufferedWriter. 
       BufferedWriter bufferedWriter = 
        new BufferedWriter(fileWriter); 

       // Note that write() does not automatically 
       // append a newline character. 
       bufferedWriter.write("Hello there,"); 
       // Always close files. 
       bufferedWriter.close(); 
      } 
     } 
    } 

答えて

1

あなたがそれらを読むようline(複数可)を印刷し、カウントする必要があります。また、出力ファイルと入力ファイルを区別する必要があります。そして、try-with-resources Statementsを使用することをお勧めします。何かのように、

String fileName = "test.java"; 
String outputFileName = String.format("%s.txt", fileName.replace('.', '_')); 
try (BufferedReader br = new BufferedReader(new FileReader(fileName)); 
     PrintWriter pw = new PrintWriter(new FileWriter(outputFileName))) { 
    int count = 1; 
    String line; 
    while ((line = br.readLine()) != null) { 
     pw.printf("%03d %s%n", count, line); 
     count++; 
    } 
} catch (Exception e) { 
    e.printStackTrace(); 
} 
関連する問題