明月松間照 清泉石上流


                                                  ——— 兵臨城下   貓科動物
          posts - 70, comments - 137, trackbacks - 0, articles - 23
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          關于文件的讀寫問題,路過看一下!

          Posted on 2006-07-16 12:14 兵臨城下 閱讀(462) 評論(4)  編輯  收藏 所屬分類: J2SE

          ????? 最近按要求寫了一個class,功能很簡單,只需在指定的網頁代碼<html>標簽后加入一段taglib(就是一段字符串),我原想很輕松,可遇到一個問題:
          ????? 在平常的java file 操作時,經常是打開一個file作為in流,read出數據進行各種處理,最后或輸出或返回到另外一個文件out流中。可我現在要求實現的是在同一個file中讀取并且返回到同一個文件中。在建立in流時,容易:BufferedReader buffReader = new BufferedReader(new FileReader(file));可怎么建立out流呢,總不能都指向同一文件吧?BufferedWriter buffWrite = new BufferedWriter(new FileWriter(file));
          ??????后來我用了一個折中的辦法,先在同一目錄下建立一個臨時的文件(例如:temp.jsp),將源文件和需要加入的taglib都寫入,然后將源文件刪除,再將temp.jsp重命名。雖然功能是實現了,沒有任何問題,但總感覺怪怪的。難道java的file操作沒有直接打開一個file流,提供編輯功能方法,修改后直接保存。
          ??????一點疑問,大家看看,不知道各位遇到這類問題如何解決!希望大家不吝賜教!


          評論

          # re: 關于文件的讀寫問題,路過看一下!  回復  更多評論   

          2006-07-17 21:44 by 兵臨城下
          沒人知道嘛!

          # re: 關于文件的讀寫問題,路過看一下!  回復  更多評論   

          2006-07-19 18:05 by dingfirst
          指向同一個文件有什么問題么?只要你把buffReader關閉后再寫入就可以了。
          可以由buffReader生成操作結束后的字符串,也可以生成相對位置需要改變的集合。

          # re: 關于文件的讀寫問題,路過看一下!  回復  更多評論   

          2006-07-19 22:11 by 兵臨城下
          謝了!

          # re: 關于文件的讀寫問題,路過看一下!  回復  更多評論   

          2006-07-27 22:55 by 兵臨城下
          如果把BuffReader關了,我又怎么定位,在指定位置寫入taglib呢?
          將內容儲存在字符串中,總覺得別扭,這和我建一臨時文件是一個道理。
          難道java的IO操作沒有這樣的一個功能:打開一個文件,讀取到需要的位置時插入tablib,然后直接保存。
          打開一個Reader就只能read,打開一個writer就只能寫入!總覺得不爽!呵呵
          主站蜘蛛池模板: 瑞金市| 鹰潭市| 公安县| 河曲县| 太和县| 南丹县| 南昌县| 河池市| 大洼县| 宜兴市| 嵊泗县| 望奎县| 社旗县| 仁化县| 双流县| 安西县| 板桥市| 察隅县| 嘉鱼县| 绥芬河市| 微山县| 锦州市| 青海省| 丰原市| 雷波县| 龙游县| 舟曲县| 句容市| 内江市| 丹东市| 水城县| 抚顺市| 麻栗坡县| 清河县| 卢湾区| 凤凰县| 沐川县| 吴忠市| 迭部县| 延川县| 西宁市|