html文件替换其中的href的内容

原创 2015年07月09日 15:12:01
package com.util;


import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class FileReadWriteReplacer {


public static void readFolder(String filePath, File outPath,String replaceContext) {
try {
// 读取指定文件夹下的所有文件
File file = new File(filePath);
if (!file.isDirectory()) {
System.out.println("---------- 该文件不是一个目录文件 ----------");
} else if (file.isDirectory()) {
System.out.println("---------- 这是一个目录文件夹 ----------");
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File readfile = new File(filePath + "\\" + filelist[i]);
// String path = readfile.getPath();//文件路径
String absolutepath = readfile.getAbsolutePath();// 文件的绝对路径
String filename = readfile.getName();// 读到的文件名
if(filename.contains(".html")||filename.contains(".htm")){
readFile(absolutepath, filename, i, outPath,replaceContext);// 调用 readFile
} // 方法读取文件夹下所有文件
}
System.out.println("---------- 所有文件操作完毕 ----------");
}
} catch (Exception e) {
e.printStackTrace();
}
}


public static void readFile(String absolutepath, String filename,
int index, File targetFile,String replaceContext) {
try {
BufferedReader bufReader = new BufferedReader(
new InputStreamReader(new FileInputStream(absolutepath),"UTF-8"));
StringBuffer strBuffer = new StringBuffer();
String empty = "href=\""+replaceContext+"\"";
String tihuan = "";
String pattern= "href=\"([^\"]*)\""; //正则判断 herf内容
Pattern p = Pattern.compile(pattern, 2 | Pattern.DOTALL); 
for (String temp = null; (temp = bufReader.readLine()) != null; temp = null) {
 
Matcher m = p.matcher(temp);//匹配正则内容
if(m.find()) { 
   tihuan="href=\""+m.group(1)+"\"";
temp = temp.replace(tihuan, empty);// 替换为你想要的东东
}
strBuffer.append(temp);
strBuffer.append(System.getProperty("line.separator"));
}
bufReader.close();
if (targetFile.exists() == false) { 
targetFile.mkdirs();
System.out.println("已成功创建输出文件夹:" + targetFile);
}
PrintWriter printWriter = new PrintWriter(targetFile + "\\" + filename);
printWriter.write(strBuffer.toString().toCharArray());
printWriter.flush();
printWriter.close();
System.out.println("第 " + (index + 1) + " 个文件   " + absolutepath
+ "  已成功输出到    " + targetFile + "\\" + filename);
} catch (Exception e) {
e.printStackTrace();
}
}


}


测试页面


package com.util;


import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class Test {
public static void main(String[] args) {


Properties pro = new Properties();
Test ttt = new Test();
try {
/*   InputStream path = ttt
.getClass()
.getClassLoader()
.getResourceAsStream(
"GalaxyLifeAppStaticEnvConfig.properties");

pro.load(path);

*/  //或者

// Properties pro = new Properties();


File settingFile = new File(
"config_env/DEV/GalaxyLifeAppStaticEnvConfig.properties");


pro.load(new FileInputStream(settingFile));

// 输出文件路径
File targetFile = new File("C://ff//");

if(targetFile.exists()==false){
targetFile.mkdirs();
}

/*
* 三个参数 1.读取文件路径 2.输出文件路径 3.替换内容
*/
FileReadWriteReplacer.readFolder("WebRoot", targetFile,
pro.getProperty("GalaxyLifeAppStatic.value"));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}


}

属性文件


GalaxyLifeAppStatic.key=#{key}


GalaxyLifeAppStatic.value=http://www.kkkk.com/


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例 .

WORD Java代码  package textReader;    import java.io.*;    import org.apache.poi.h...

js动态设置表格内容,生成HTML文件

通过js方式设置table中数据内容,并生成为HTML文件。这篇文章只是为动态设置表格内容作个范例,里面有一些常用的js方法。  var i = 0;  function addRow()...

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例

以下是Java对几种文本文件内容读取代码。其中,OFFICE文档(WORD,EXCEL)使用了POI控件,PDF使用了PDFBOX控件。 WORD: package textReader; ...
  • zlb824
  • zlb824
  • 2011-11-28 16:52
  • 1123

java生成word,html文件并将内容保存至数据库 (http://blog.163.com/whs3727@126/blog/static/729915772007325112014115/)

java生成word,html文件并将内容保存至数据库   2007-04-25 11:20:14|  分类: Java|举报|字号 订阅 http://hi....

HTML文件基本标记(四)-设计网页文本内容

1、标题文字 标题文字标签:h1~h6; 标题文字对齐方式:align=“left(左对齐)、center(居中)、right(右对齐)” 2、设置文字格式 设置文字字体:face=“字体名称”; 设...

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法

WORD Java代码 package textReader;  import java.io.*;  import org.apache.poi.hwpf.extractor.Wor...

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例

以下是Java对几种文本文件内容读取代码。其中,OFFICE文档(WORD,EXCEL)使用了POI控件,PDF使用了PDFBOX控件。   点击这里 查看相关控件的下载地址和配置方法。 ...

UIWebView获得网页内容(HTML源码)、加载本地HTML文件

获取网页内容在使用UIWebView加载一个网页的时候,有时候需要获得此页面的源码,可以使用UIWebView执行JS代码来获得://加载网址 let req = NSMutableURLReques...

HTML文件模板替换到转换PDF文件并下载PDF文件

话不多说了,由于最近有通过数据生成PDF的需求,所以做完后在这里记录分享一下。直接用iText创建pdf文件考虑到html中的表格等等要合并或者什么的太麻烦,就直接通过Html模板替换之后再转换PDF...

采用html 的a标签,href连接为文件时无法下载解决方案

本文转自  :   http://dong-shuai22-126-com.iteye.com/blog/1772102 最简单的下载文件的方式,大家都清楚,是采用html 中的a标签的hr...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)