博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java读取html文件并替换_java读取html并替换相关内容
阅读量:6502 次
发布时间:2019-06-24

本文共 2035 字,大约阅读时间需要 6 分钟。

import java.io.*;

/**

* Created by IntelliJ IDEA.

* User: zl420226

* Date: 2010-4-10

* Time: 13:58:23

* To change this template use File | Settings | File Templates.

*/

public class ReplaceText {

public static void main(String[] args)

{try {

BufferedReader buff = new BufferedReader(

new InputStreamReader(System.in));

System.out.print("Source Folder path:");

System.out.flush();

String folderPath = buff.readLine();

BufferedReader buffTarget = new BufferedReader(

new InputStreamReader(System.in));

System.out.print("target Folder path:");

System.out.flush();

String targetFolder = buffTarget.readLine();

BufferedReader buffSourceText = new BufferedReader(

new InputStreamReader(System.in));

System.out.print("The content you will replace:");

System.out.flush();

String source = buffSourceText.readLine();

BufferedReader buffTargetText = new BufferedReader(

new InputStreamReader(System.in));

System.out.print("replace as:");

System.out.flush();

String target = buffTargetText.readLine();

File file = new File(folderPath);

if(file.isDirectory()) {

String[] filelist = file.list();

for (int i = 0; i < filelist.length; i++) {

{

BufferedReader bf = new BufferedReader(new FileReader(folderPath+"//"+filelist[i]));

BufferedWriter bw = new BufferedWriter(new FileWriter(targetFolder+"//"+filelist[i]));

String s = null;

while( (s = bf.readLine()) != null) {

s = s.replaceAll(source,target);

bw.write(s);

bw.newLine();

bw.flush();

}

bw.close();

}

}

}

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

}

}

网络摘录:

知道你有无注意到,JDK中的String的ReplaceAll方法支持的是正则表达式,在你的参数中可能出现正则表达式转义符的情况下,很可能 得到意想不到的结果.所以做一个自己的ReplaceAll方法还是一个很有必要的工作.

public static String replaceAll(String src, String fnd, String rep) {

int pos = 0;

int prepos = 0;

int fndlen = fnd.length();

String newstr = "";

pos = src.indexOf(fnd, pos);

while (pos >= 0) {

newstr += src.substring(prepos, pos);

newstr += rep;

prepos = pos + fndlen;

pos = src.indexOf(fnd, pos + fndlen);

}

newstr += src.substring(prepos);

return newstr;

}

转载地址:http://uqlyo.baihongyu.com/

你可能感兴趣的文章
【视频编解码·学习笔记】7. 熵编码算法:基础知识 & 哈夫曼编码
查看>>
spark集群安装部署
查看>>
MySql 查询表字段数
查看>>
mariadb 内存占用优化
查看>>
Centos7安装编译安装zabbix2.219及mariadb-5.5.46
查看>>
怎么获得combobox的valueField值
查看>>
Console-算法[if,while]-一输入两个正整数m和n,求其最大公约数和最小公倍数
查看>>
浅谈网络协议(四) IP的由来--DHCP与PXE
查看>>
jre与jdk的区别
查看>>
全景图的种类
查看>>
git 维护
查看>>
jfinal框架下使用c3P0连接池连接sql server 2008
查看>>
Jfinal Generator 不需要生成带某个前缀的表名数组的方法
查看>>
struts2中使用标签操作静态方法等
查看>>
熬夜写了一个小游戏,向SpaceX聊表敬意
查看>>
身份证工具类
查看>>
JPA增删改查,
查看>>
apache 开启 gzip 压缩服务
查看>>
python mysql
查看>>
开源 免费 java CMS - FreeCMS1.5-建站向导
查看>>