Java语言程序设计(二十五)文件替换文本的具体实现
假设要编写一个名为ReplaceText的程序,用一个新字符串替换文本文件中所有出现某个字符串的地方,文件名和字符串都作为命令行参数传递,如下所示: java ReplaceText sourceFile targetFile oldString newString
这里面一共有四个参数,第一个是sourceFile,是要替换的文件,targetFile是第二个参数,是替换后的新文件保存的地方,后面两个是新旧的字符串。我们这个程序首先检查传给mian方法的参数个数,检查源文件和目标文件是否存在,之后为源文件创建一个Scanner,为目标文件创建一个PrintWriter,然后重复从源文件读入一行,替换文本,向目标文件中写入新的一行,必须关闭输出文件,以确保数据正确保存在文件中。
package tihuan;
/**
*
* @author john
*/
import java.io.BufferedReader;
import java.io.CharArrayWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.InputStreamReader;
public class Tihuan {
public static String path="D:\\a.txt";
public static void main(String[] args) throws Exception {
//待替换字符
String aStr="http";
//替换字符
String bStr="https";
//读取文件
File file=new File(path);
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
//内存流
CharArrayWriter caw=new CharArrayWriter();
//替换
String line=null;
//以行为单位进行遍历
while((line=br.readLine())!=null){
//替换每一行中符合被替换字符条件的字符串
line=line.replaceAll(aStr, bStr);
//将该行写入内存
caw.write(line);
//添加换行符,并进入下次循环
caw.append(System.getProperty("line.separator"));
}
//关闭输入流
br.close();
//将内存中的流写入源文件
FileWriter fw=new FileWriter(file);
caw.writeTo(fw);
fw.close();
}
}
我们事先在D盘中创建一个.txt文件
在执行程序过后。
- 文本文件中实现查找和替换
- Java实现--替换文本文件中所有符合条件的字符串
- JAVA实现查找替换文本文件内容的例子
- asp下实现替换远程文件为本地文件并保存远程文件的代码
- 批处理中实现替换文本内容
- pb快速替换文本文档(txt文件)中指定字符的方法
- 规则文本数据文件根据关键字段进行排序的实现
- Vim实现多文件的查找和替换
- C#实现文本文件合并 _17
- 利用C语言重定向函数freopen实现交换两个文本文件内容
- SQL Server中采用BULK INSERT实现大数据量文本文件批量导入
- 从文档中抽取文本,实现 Word, Excel, PowerPoint 文件的全文搜索
- 在线查找/正则替换文件中文本的网页接口(asp)
- 自己动手实现简易代码生成器、采用文本模板文件生成服务层、服务层接口代码的做法参考
- 怎样将word、text文件转换成pdm,在PowerDesigner运行VBScript来实现,具体代码是
- 使用PYTHON实现如何修改文本文件中的内容
- 批处理替换文本文件中的字符串,并保留换行
- Servlet+Jsp实现图片或文件的上传功能具体思路及代码
- ReSaveRemoteFile函数之asp实现查找文件保存替换的代码
- 用ed实现在文件开头插入文本