明月松间照 清泉石上流


                                        ——— 兵临城下   猫科动物
posts - 70, comments - 137, trackbacks - 0, articles - 23
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

关于文件的读写问题,路过看一下!

Posted on 2006-07-16 12:14 兵临城下 阅读(444) 评论(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就只能写入!总觉得不爽!呵呵

只有注册用户登录后才能发表评论。


网站导航: