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);
              }
          }



                                                                                                                 --    學海無涯
                  

          主站蜘蛛池模板: 稷山县| 焦作市| 文昌市| 五河县| 加查县| 北流市| 固始县| 呼伦贝尔市| 罗甸县| 库尔勒市| 尖扎县| 灵川县| 雷山县| 迭部县| 灵山县| 察哈| 张北县| 陈巴尔虎旗| 嘉鱼县| 铜川市| 时尚| 天祝| 隆德县| 祁门县| 集安市| 东乡县| 平和县| 普安县| 弥渡县| 安庆市| 克东县| 西和县| 蒲江县| 宁都县| 通海县| 宝应县| 南丹县| 广宗县| 冕宁县| 沙田区| 北京市|