nnd,一直想在自己的网站上加这个“查询吧”,不过里面的超链接都是指向根目录“/”,恶心,在网上没找到好的代码替换工具,今天心情好自己写一个吧。
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ReplaceUtil {
private String[] dot;
private File dir;
private int di = 0;
private int count = 1;
public synchronized void done() {
File[] fs = dir.listFiles();
for (File f : fs) {
if (f != null)
if (f.isDirectory()) {
dir = f;
di = di + 1;
done();
di = di - 1;
} else if (f.isFile()) {
boolean isDot = false;
String suf = f.getName().substring(
f.getName().lastIndexOf("."));
for (int i = 0; i < dot.length; i++) {
if (suf.endsWith(dot[i]))
isDot = true;
}
if (isDot) {
try {
System.out.println(count + "->操作文件[" + f.getPath()
+ "]");
replace(f, di);
count++;
} catch (IOException e) {
System.out.println("操作文件[" + f.getPath() + "]时出错!");
e.printStackTrace();
}
}
}
}
}
private void replace(File f, int di) throws IOException {
StringBuffer sb = new StringBuffer();
// read
InputStream in = new FileInputStream(f);
BufferedReader dr = new BufferedReader(new InputStreamReader(in));
String line = dr.readLine();
while (line != null) {
// TODO:replace
if (f.getName().endsWith("js")) {
if (di == 0)
line = line.replace("=\\\"\\/", "=\\\"");
else if (di == 1)
line = line.replace("=\\\"\\/", "=\\\"../");
else if (di == 2)
line = line.replace("=\\\"\\/", "=\\\"../../");
else if (di == 3)
line = line.replace("=\\\"\\/", "=\\\"../../../");
} else if (f.getName().endsWith("css")) {
if (di == 0)
line = line.replaceAll("\\(/", "(");
else if (di == 1)
line = line.replaceAll("\\(/", "(../");
else if (di == 2)
line = line.replaceAll("\\(/", "(../../");
else if (di == 3)
line = line.replaceAll("\\(/", "(../../../");
} else {
if (di == 0)
line = line.replaceAll("=\"/", "=\"");
else if (di == 1)
line = line.replaceAll("=\"/", "=\"../");
else if (di == 2)
line = line.replaceAll("=\"/", "=\"../../");
else if (di == 3)
line = line.replaceAll("=\"/", "=\"../../../");
}
sb.append(line + "\t\n");
line = dr.readLine();
}
// write
// String tfname=newFilePath(f.getAbsolutePath());//test
BufferedWriter writer = new BufferedWriter(new FileWriter(f));
writer.write(sb.toString());
writer.flush();
}
/**
* use for testing
* @param path
* @return
*/
private String newFilePath(String path) {
String sub = path.substring(0, path.lastIndexOf("."));
String enb = path.substring(path.lastIndexOf("."));
return sub + "_" + enb;
}
public String[] getDot() {
return dot;
}
public void setDot(String[] dot) {
this.dot = dot;
}
public File getDir() {
return dir;
}
public void setDir(File dir) {
this.dir = dir;
}
public static void main(String[] args) {
String[] dot = { "htm", "html", "php", "js", "css" };
File dir = new File("F:\\测试\\91tbnet");
ReplaceUtil r = new ReplaceUtil();
r.setDot(dot);
r.setDir(dir);
r.done();
}
}
分享到:
相关推荐
C#工作流引擎源码,不用多说了,看看就知道了。很经典的源码!
安卓锁机源码! 已经反复修改! 这个源码是我买别人的希望大家多多看看! 这点积分应该不多吧! 值得你去研究!
jsp网上书店系统(带源码)
公交查询系统源码(JAVA),可直接运行。做毕业设计、课程设计或者想研究下技术的可以下载学习。
android实现拼图游戏源码!!!!!!!!
而且发布了源码!!大家快来下载!!! (编译需要模块。) 模块下载地址: http://download.csdn.net/source/2635638 (想要编译,先下模块!!!↑↑↑↑下了模块再下载这个源码,就可以编译了!) (不会用的...
婚恋 交友 php+mysql源码 网上不好找的啊 ,完全开放源码。模板粉红系。(看到有评论说被骗了,我晕,希望连php语法都不懂的童鞋不要乱评论,这个开源的虽然比不上世纪佳缘等这些大网站,但也是比较好的一个适合二次...
本项目基于安卓的快递查询项目源码,学生毕设作品,使用了爱查快递http://www.ickd.cn/的api接口,可以查询申通、EMS、顺风、圆通、中通、韵达、天天、汇通、全锋、德邦、宅急送等11中快递的单号信息,支持手动输入...
我们的每个系统作品都要经过周密的市场分析调查、可行性研究、项目策划,对我们来说项目的可行性高于一切! 功能专业、布局严谨 以项目方案为蓝本,以现有成功地方网站为局部参考,并充分结合地方性网站的特点与...
终结者远控Rat2.1告别版源码,界面不错!!!! 微群:http://q.weibo.com/447933
YY多开源码YY多开器源码源码YY多开器源码源码YY多开器源码源码
小米抢购器 新版-源码,最新的代码!!实用
Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码...
以上数十子模块源码全部为完整源码!是j2ee学习者难得的优秀学习材料! 下载本资源请阅读以下注意事项: 本工程所需jar文件: 因为我(hexiang221)在csdn的上传权限仅为20M,而本工程源码+jar文件共28.4M, 所以我...
Minix3 源码的解析,没有繁琐,很快能看明白。 最重要是内容少而精!
该资源主要参考我的博客:Java+MyEclipse+Tomcat (三)配置MySQL及查询数据显示在JSP网页中完成,http://blog.csdn.net/eastmount/article/details/45653615 主要讲述如何通过MySQL连接Java Web的过程。该资源比较...
我买综合商品模板整站带数据全开源源码 ! 压缩包有安装说明 不懂可以留言!在某宝花30大洋买的 分享给大家!亲测可以使用!由于演示数据图片太大 删除部分测试图片!
资源太大,分系列,其他系列详见我的资料 源码01 销售管理系统 源码02 彩票分析系统 源码03 餐饮管理系统 源码04 C#点名程序 源码05 象棋游戏 源码06 变色球游戏 源码07 多功能计算器 源码08 记事本 源码09 简易画图...
现在花旗,提供支付平台源码程序,打造一个你自己的传世支付平台,免费推荐俺一手的sp通道商。让你做平台无忧,免费提供技术支持 广大GM为什么要担这个风险呢,为什么不自己去买套属于自己的游戏支付平台程序呢 ,...
ecshop仿京东商城网站源码 这边用得不错! 免费分享给大家!