明月松間照 清泉石上流


                                                  ——— 兵臨城下   貓科動物
          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就只能寫入!總覺得不爽!呵呵
          主站蜘蛛池模板: 金平| 句容市| 白山市| 二手房| 彭水| 乐亭县| 乐昌市| 大兴区| 萝北县| 新巴尔虎左旗| 富阳市| 内乡县| 永定县| 丹江口市| 高州市| 芜湖县| 于都县| 兰西县| 大化| 蓬安县| 漳平市| 阿图什市| 山东| 嘉禾县| 山西省| 贵定县| 梅河口市| 峨边| 禹州市| 林芝县| 佳木斯市| 石阡县| 宜兴市| 哈巴河县| 邵东县| 乡城县| 宕昌县| 涡阳县| 景德镇市| 丹凤县| 盈江县|