明月松間照 清泉石上流


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

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

          Posted on 2006-07-16 12:14 兵臨城下 閱讀(454) 評論(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就只能寫入!總覺得不爽!呵呵
          主站蜘蛛池模板: 南皮县| 东乡县| 钦州市| 宁化县| 仪征市| 晋江市| 河津市| 株洲县| 镇巴县| 安庆市| 临夏县| 房产| 罗甸县| 葵青区| 库车县| 房山区| 息烽县| 滨海县| 五峰| 建平县| 凤凰县| 万全县| 旺苍县| 山东省| 滦南县| 高州市| 蛟河市| 阳谷县| 博湖县| 新田县| 托克逊县| 都江堰市| 宣化县| 鄄城县| 大竹县| 武山县| 若尔盖县| 新邵县| 政和县| 珲春市| 封丘县|