Cyh的博客

          Email:kissyan4916@163.com
          posts - 26, comments - 19, trackbacks - 0, articles - 220

          從鍵盤接收數據并輸出到文件

          Posted on 2009-05-24 21:35 啥都寫點 閱讀(365) 評論(0)  編輯  收藏 所屬分類: J2SE
          關鍵技術:
          • 鍵盤屬于標準輸入,通過System.in可以獲得標準輸入流
          • 利用PrintWriter輸出字符串到文件,它的flush方法將文件內容從內存緩沖區寫進文件,在構造PrintWriter時,可以通過參數指定自動flush。

          package book.io;

          import java.io.BufferedReader;
          import java.io.File;
          import java.io.FileWriter;
          import java.io.IOException;
          import java.io.InputStreamReader;
          import java.io.PrintWriter;
          /**
           * 從標準輸入流中讀取數據,并存儲到文件中
           
          */
          public class CatStdinToFile {

              
          public static boolean catStdinToFile(String fileName){
                  File file 
          = new File(fileName);
                  
          //將數據按照文本輸出到文件
                  PrintWriter writer = null;
                  BufferedReader in 
          = null;
                  
          try {
                      
          //為輸出文件建立一個寫入器
                      writer = new PrintWriter(new FileWriter(file));
                      System.out.println(
          "請輸入文件內容,輸入quit結束");
                      
          //用BufferedReader包裝標準輸入流
                      in = new BufferedReader(new InputStreamReader(System.in));
                      String inputLine 
          = null;
                      
          while (((inputLine = in.readLine( )) != null&& (!inputLine.equals("quit"))) {
                          writer.println(inputLine);
                      }
                      
          //如果采用new PrintWriter(new FileWriter(file), true)則會自動flush。
                      writer.flush();
                      writer.close();
                      
          return true;
                  } 
          catch (IOException e) {
                      System.out.println(e.getMessage());
                      
          return false;
                  } 
          finally {
                      
          if (in != null){
                          
          try {
                              in.close();
                          } 
          catch (IOException e) {
                              e.printStackTrace();
                          }
                      }
                  }
              }

              
          public static void main(String[] args) {
                  String fileName 
          = "C:/temp/temp.java";
                  CatStdinToFile.catStdinToFile(fileName);
                  System.out.println();
                  System.out.println(
          "輸出文件的內容:");
                  ReadFromFile.readFileByLines(fileName);
              }
          }



                                                                                                                 --    學海無涯
                  

          主站蜘蛛池模板: 新兴县| 女性| 贵州省| 黄浦区| 滕州市| 通州市| 铜川市| 南乐县| 兴文县| 迁安市| 南陵县| 岳阳县| 筠连县| 忻州市| 桦川县| 庆云县| 射洪县| 雷波县| 潼南县| 揭西县| 兴文县| 武鸣县| 安庆市| 清苑县| 仁寿县| 高要市| 邵武市| 宜兰县| 灵川县| 陈巴尔虎旗| 东乡县| 建昌县| 巴中市| 沁水县| 尉氏县| 岐山县| 台南县| 温州市| 灌南县| 临澧县| 台山市|