Android帮助文档访问速度慢的解决办法

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileFilter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Map;
import java.util.UUID;

public class file {

	private static final String TAG = "<script src=\"http://www.google.com/jsapi\" type=\"text/javascript\"></script>";

	public static void main(String[] args) {
			File docs = new File("F:\\AndroidSDK\\docs");
			System.out.println("It will take several minutes, please wait...");
			traverse(docs);
			}

	

	/**
	 * 遍历Android SDK安装目录下的docs目录
	 * 
	 * @param dir
	 */
	private static void traverse(File dir) {
		if (dir.isDirectory()) {
			File[] files = dir.listFiles(new FileFilter() {

				@Override
				public boolean accept(File file) {
					if (file.isFile() && file.getName().endsWith(".html")) {
						BufferedReader reader = null;
						try {
							reader = new BufferedReader(new FileReader(file));
							String buffer;
							while ((buffer = reader.readLine()) != null) {
								if (buffer.trim().equalsIgnoreCase(TAG)) {
									return true;
								}
							}
						} catch (Exception e) {
							e.printStackTrace();
						} finally {
							try {
								reader.close();
							} catch (IOException e) {
								e.printStackTrace();
							}
						}
					} else if (file.isDirectory()) {
						return true;
					}
					return false;
				}
			});
			for (File file : files) {
				if (file.isDirectory()) {
					System.out.println("Scanning Folder:"
							+ file.getAbsolutePath());
					traverse(file);
				} else {
					doChange(file);
				}
			}
		}
	}

	/**
	 * 注释html中的某行Javascript代码
	 * 
	 * @param file
	 * @return
	 */
	private static boolean doChange(File file) {
		System.out.println("Extracting File:" + file.getAbsolutePath() + "...");
		String desPath = file.getParent() + "\\" + UUID.randomUUID().toString() + ".html";
		File des = new File(desPath);
		BufferedReader reader = null;
		BufferedWriter writer = null;
		try {
			des.createNewFile();
			reader = new BufferedReader(new FileReader(file));
			writer = new BufferedWriter(new FileWriter(des));
			String buffer;
			while ((buffer = reader.readLine()) != null) {
				if (buffer.trim().equalsIgnoreCase(TAG)) {
					buffer = "<!--" + TAG + "-->";
				}
				writer.write(buffer + "\n");
				writer.flush();
			}
			return true;
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			try {
				reader.close();
				writer.close();
				file.delete();
				des.renameTo(file);
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return false;
	}

}



每次打开网页都会访问google,所以速度很慢,这段java代码批量注释了doc下的所有html文件中访问google的js代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值