当前位置:  技术问答>java相关

怎样对一个文件里的内容进行修改???急……

    来源: 互联网  发布时间:2015-05-21

    本文导语:  怎样对一个文件的内容进行修改,如在文件里找到一字符串,并把该字符串用别的字符串替换掉? | 这是一段代码,如下: //:ModifyFile.java //This class change a *.jsp file //  import java.util.StringT...

怎样对一个文件的内容进行修改,如在文件里找到一字符串,并把该字符串用别的字符串替换掉?

|
这是一段代码,如下:

//:ModifyFile.java
//This class change a *.jsp file
// 

import java.util.StringTokenizer;
import java.io.*;

public class ModifyFile{
    //a file which will be modify
    public FileInputStream fisRWF;
    public FileOutputStream fosRWF;
    //the file name which will be modify
    String fileName;
    //store the string from the file
    String strInputFile;
    //store the string to the file
    String strOutputFile;
    //the string buffer which are used to store the string out to the file
    StringBuffer strbfBuffer;
    
    //constructor ,the argument is file
    ModifyFile(File mf){
        fileName = new String(mf.getName());
        strInputFile = "";

    }
    //constructor ,the argument is string
    ModifyFile(String mf){
        fileName = new String(mf);
        strInputFile = "";

    }
    //open a input stream of the file called fileName
    //init the strInputFile and strbfBuffer
    public void getFile()throws Exception{
        fisRWF = new FileInputStream(fileName);
        byte buffer[] = new byte[80];
        String str;
        int bytes;
        while((bytes=fisRWF.read(buffer,0,80))!=-1){
            str = new String(buffer,0,bytes,"Default");
            strInputFile = strInputFile+str;
        }
        strbfBuffer = new StringBuffer(strInputFile);
        fisRWF.close();
        
    }
    //modify the strbfBuffer and strOutputFile
    //argument brp is the string which would be replace
    //argument rp is the string which would be used to replace 
    public void modify(String brp,String rp){
        int intBrpFirst;
        strInputFile = strbfBuffer.toString();       
        intBrpFirst = strInputFile.indexOf(brp);
        
        if (intBrpFirst!=-1){
            strbfBuffer.replace(intBrpFirst,intBrpFirst+brp.length(),rp);
            modify(brp,rp);
        }
        strOutputFile = new String(strbfBuffer);
    }
    //output the strOutputFile to the file
    //close the file
    public void setFile()throws Exception{
        int intSOFNum;
        intSOFNum = strOutputFile.length();
        byte btOutput[] = new byte[intSOFNum];
        btOutput = strOutputFile.getBytes();
        fosRWF = new FileOutputStream(fileName);
        fosRWF.write(btOutput);
        fosRWF.close();
        
    }

}

|
你要的是什么?
用InputStream之类的东西将文件内容读到String中,使用Regexp进行字符串替换,然后再用OutputStream写回去不行吗?

|
仔细看看这篇文章
http://www.csdn.net/expert/topic/658/658351.xml?temp=8.713931E-02

|
那当然要将整个文件读出来再写回去了,这是肯定的!
除非你用数据库,或者是添加文本到末尾!

用xml组织你的文档或许使用起来会好点!

    
 
 

您可能感兴趣的文章:

  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 求助,linux中修改了目录dir下的某个文件,相应的dir属性中的时间会与修改目录下文件的时间一致,这是怎么实现的?
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 用JCreator写了一个小程序,有十几个class,当修改某个文件重新编译,javac并没有编译修改的文件,请问要如何做javac才会重新编译所有的
  • windows/windows 7/windows 8 下打开查看、修改及保存超大(GB级)文本文件及其它类型文件的工具-PilotEdit
  • 修改ip地址的话应该修改/ect下哪个文件里的内容?
  • linux/Centos/ubuntu下如何使用umask命令修改新建文件时的默认权限
  • 有什么命令可以修改整个目录下文件的最后修改时间?
  • 急,请问如何修改网络接口eth为其它名称,如网络接口为abc0, abc1,要修改哪个配置文件? iis7站长之家
  • 在redhat-linux7.2下,用lilo的方式启动,当升级内核时,如何修改/etc/lilo.conf文件?有没有什么设置让系统自动修改这个文件??
  • 哪个DOS命令可以修改指定文件的时间(修改时间)?
  • 急,请问如何修改网络接口eth为其它名称,如网络接口为abc0, abc1,要修改哪个配置文件?
  • 编译完内核后如何修改grub.conf文件是修改生效
  • linux 下如何修改文件名,文件内容
  • 修改内核代码问题:如何编译修改的单个文件而不用重建整个内核?
  • 一个通用makefile不会不检测.h文件的修改,应该怎么修改.
  • 求命令:什么命令可以把文件夹下所有的文件按修改时间先后排出来,包括子文件夹里的文件。
  • 求助文件操作中修改文件中字段的问题,请大家帮忙解决
  • 我修改了/etc/resolve.conf文件中的DNS,请问怎样不重起机器前提下是修改起作用?
  • 如何判断文件夹下的文件是否被修改
  • 请问unix下修改文件和文件夹读写权限的问题
  • linux下如何对文本文件和记录文件进行插入删除操作啊?
  • 在中断服务程序里可以进行文件的读写操作么?
  • 每个线程都进行申请文件描述符的操作的话,会不会发生文件描述符申请冲突?
  • 怎样用chmod将一个文件夹中所有文件改为777的权限(即可以进行任何操作)
  • 用C语言如何对img文件进行操作
  • applet怎样进行文件写入读出操作
  • 能否对一个文件进行crc校验?
  • 怎样在jsp网页中对服务器上的文件进行操作?
  • 关于javabean中的对文件进行操作的路径问题?
  • 要对文件中包含特定字符串的行数进行统计,Shell脚本该如何写?急用!!在线等待
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java 中能不能在文件前面添加些内容?不覆盖原内容!
  • 怎样写一个shell,可以查看一个文件的内容,并且有翻页的内容,并可以打印的
  • Java中,给已存在的文件添加内容,但不覆盖文件原有内容,该如何操作
  • linux如何合并两个文件(将文件A内容复制到文件B的后面)
  • 菜问题:请问如何根据文件中的一段内容查找文件路径和文件名称,在线等候
  • linux如何用命令清空文件的内容但不删除文件
  • 通过shell解析文件,并根据解析内容生成新的文件。
  • 求助 如何遍历一个文件的内容?并且将结果中 第一列名字相同的内容的各个字段做相加工作
  • 我想按照文件名合并一些文件内容,如何操作
  • 合并一个文件夹下多个文件内容的单行shell命令
  • 求助,在Linux下当文件夹大小超过1G时,删除文件夹内容
  • sed用法:怎么从一文件a中读取一行,添加些内容再写入另一文件b
  • 怎样从JAR文件中提取class文件??(无内容)
  • 如何 列出目录下包含指定内容的文件的文件名?
  • 如何从文件的指定位置把文件内容读入字符型数组?
  • 请问如何动态命名重定向输出文件名,并将内容输出到该文件?
  • php读取文件内容并清空文件
  • PHP读取文件内容后清空文件示例代码
  • 请问如何在桌面上新建一个文件(文件内容为执行一条命令,并显示一条相应的提示)
  • vi 中编辑两个文件,怎样从其中一个文件拷一段内容到另一个文件中。(同时打开两个文件)
  • C++ I/O 成员 eof():如果处于文件结尾处则返回true
  • Shell脚本如何递归现实一个文件夹中的文件(文件夹中含有文件夹)
  • WinDows8最新版文件夹加密
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • 请问:proc中的头文件中能包含头文件吗?(感觉如果头文件中包含头文件的话,在链接时就会有错误啊)
  • python异常信息堆栈输出到日志文件
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 怎么统计一个文件夹下有多少个文件(不包括文件夹)
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3