學習 學習 再學習

          學習才是唯一的出路

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            31 隨筆 :: 1 文章 :: 8 評論 :: 0 Trackbacks
          import java.io.*;


          /**
           * 
           * 功能描述:創建TXT文件并進行讀、寫、修改操作
           *      
           * 
          @author <a href="mailto:zhanghhui@126.com">KenZhang</a>
           * 
          @version 1.0 
           * Creation date: 2007-12-18 - 下午06:48:45
           
          */

          public class ReadWriteFile {
              
          public static BufferedReader bufread;
              
          //指定文件路徑和名稱
              private static String path = "D:/suncity.txt";
              
          private static  File filename = new File(path);
              
          private static String readStr ="";


              
          /**
               * 創建文本文件.
               * 
          @throws IOException 
               * 
               
          */

              
          public static void creatTxtFile() throws IOException{
                  
          if (!filename.exists()) {
                      filename.createNewFile();
                      System.err.println(filename 
          + "已創建!");
                  }

              }

              
              
          /**
               * 讀取文本文件.
               * 
               
          */

              
          public static String readTxtFile(){
                  String read;
                  FileReader fileread;
                  
          try {
                      fileread 
          = new FileReader(filename);
                      bufread 
          = new BufferedReader(fileread);
                      
          try {
                          
          while ((read = bufread.readLine()) != null{
                              readStr 
          = readStr + read+ "\r\n";
                          }

                      }
           catch (IOException e) {
                          
          // TODO Auto-generated catch block
                          e.printStackTrace();
                      }

                  }
           catch (FileNotFoundException e) {
                      
          // TODO Auto-generated catch block
                      e.printStackTrace();
                  }


                  System.out.println(
          "文件內容是:"+ "\r\n" + readStr);
                  
          return readStr;
              }

              
              
          /**
               * 寫文件.
               * 
               
          */

              
          public static void writeTxtFile(String newStr) throws IOException{
                  
          //先讀取原有文件內容,然后進行寫入操作
                  String filein = newStr + "\r\n" + readStr + "\r\n";
                  RandomAccessFile mm 
          = null;
                  
          try {
                      mm 
          = new RandomAccessFile(filename, "rw");
                      mm.writeBytes(filein);
                  }
           catch (IOException e1) {
                      
          // TODO 自動生成 catch 塊
                      e1.printStackTrace();
                  }
           finally {
                      
          if (mm != null{
                          
          try {
                              mm.close();
                          }
           catch (IOException e2) {
                              
          // TODO 自動生成 catch 塊
                              e2.printStackTrace();
                          }

                      }

                  }

              }

              
              
          /**
               * 將文件中指定內容的第一行替換為其它內容.
               * 
               * 
          @param oldStr
               *            查找內容
               * 
          @param replaceStr
               *            替換內容
               
          */

              
          public static void replaceTxtByStr(String oldStr,String replaceStr) {
                  String temp 
          = "";
                  
          try {
                      File file 
          = new File(path);
                      FileInputStream fis 
          = new FileInputStream(file);
                      InputStreamReader isr 
          = new InputStreamReader(fis);
                      BufferedReader br 
          = new BufferedReader(isr);
                      StringBuffer buf 
          = new StringBuffer();

                      
          // 保存該行前面的內容
                      for (int j = 1; (temp = br.readLine()) != null
                              
          && !temp.equals(oldStr); j++{
                          buf 
          = buf.append(temp);
                          buf 
          = buf.append(System.getProperty("line.separator"));
                      }


                      
          // 將內容插入
                      buf = buf.append(replaceStr);

                      
          // 保存該行后面的內容
                      while ((temp = br.readLine()) != null{
                          buf 
          = buf.append(System.getProperty("line.separator"));
                          buf 
          = buf.append(temp);
                      }


                      br.close();
                      FileOutputStream fos 
          = new FileOutputStream(file);
                      PrintWriter pw 
          = new PrintWriter(fos);
                      pw.write(buf.toString().toCharArray());
                      pw.flush();
                      pw.close();
                  }
           catch (IOException e) {
                      e.printStackTrace();
                  }

              }

              
          /**
               * main方法測試
               * 
          @param s
               * 
          @throws IOException
               
          */

              
          public static void main(String[] s) throws IOException {
                  ReadWriteFile.creatTxtFile();
                  ReadWriteFile.readTxtFile();
                  ReadWriteFile.writeTxtFile(
          "20080808:12:13");
          //        ReadWriteFile.replaceTxtByStr("ken", "zhang");
              }

          }



          J-CN工作室
          www.j-cn.org
          posted on 2009-10-04 17:17 鐵猴 閱讀(7903) 評論(1)  編輯  收藏 所屬分類: JAVA隨記

          評論

          # re: java創建TXT文件并進行讀、寫、修改操作 [未登錄] 2011-08-31 13:58 chris
          替換功能BUG太明顯了……  回復  更多評論
            

          主站蜘蛛池模板: 浮梁县| 建水县| 运城市| 同德县| 东海县| 沅江市| 中牟县| 东乡县| 广灵县| 卓资县| 方山县| 宽城| 澄迈县| 安阳县| 社会| 英德市| 萝北县| 大渡口区| 德庆县| 化隆| 安丘市| 万山特区| 云霄县| 华蓥市| 手游| 东丰县| 广丰县| 金堂县| 罗城| 长兴县| 汤阴县| 大悟县| 衡山县| 保靖县| 防城港市| 彭州市| 焦作市| 大石桥市| 两当县| 南华县| 延寿县|