zoukankan      html  css  js  c++  java
  • Android 参考文档本地打开缓慢,JAVA解决方案

    关于Android Develop 文档明明本地下载了,但在浏览器里打开还是很卡,原因是html文档中有链接Google服务器的Link和script。

    网上有很多解决方案,其中一种是删除里面所有链接Google服务器的Link和script。

    我在网上下载的JAVA代码这两行修饰css代码是怎么也删不掉,后来我读完代码发现有些bug.

    <link rel="stylesheet"
    href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
    title="roboto">

    以下是我参考别人的代码修改的JAVA代码解决方案,与别人JAVA代码的不同之处是能完全删除所有链接Google服务器的Link和script。

    package deleteAndroidDoc;
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class FormatDoc {
        public static int j = 1;
    
        /**
         * @param args
         */
        public static void main(String[] args) {
    
    //        写你的文件所在的文件夹绝对路径
            File file = new File("G:/Android Docs");
            searchDirectory(file, 0);
            System.out.println("OVER");
        }
    
        public static void searchDirectory(File f, int depth) {
            if (!f.isDirectory()) {
                String fileName = f.getName();
                if (fileName.matches(".*.{1}html")) {
                    String src = "<link rel="stylesheet"";
                    String src1 = "href="http://fonts.googleapis.com/css\?family=Roboto\+Condensed">";
                    String src2 = "<script src="http://www.google.com/jsapi" type="text/javascript"></script>";
                    String src3 = "<script src="https://developer.android.com/ytblogger_lists_unified.js" type="text/javascript"></script>";
                    String src4 = "<link rel="stylesheet" href="http://fonts.googleapis.com/css\?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"";
                    String src5 = "  title="roboto">";
                    String dst = "";
                    // 匹配相应的并用""(空字符串)替代
                    annotation(f, src, dst);
                    annotation(f, src1, dst);
                    annotation(f, src2, dst);
                    annotation(f, src3, dst);
                    annotation(f, src4, dst);
                    annotation(f, src5, dst);
                }
            } else {
                File[] fs = f.listFiles();
                depth++;
                for (int i = 0; i < fs.length; ++i) {
                    File file = fs[i];
                    searchDirectory(file, depth);
                }
            }
        }
    
        public static void annotation(File f, String src, String dst) {
            String content = FormatDoc.read(f);
            content = content.replaceFirst(src, dst);
            int ll = content.lastIndexOf(src);
            System.out.println(ll);
            FormatDoc.write(content, f);
            System.out.println(j++);
            return;
    
        }
    
        public static String read(File src) {
            StringBuffer res = new StringBuffer();
            String line = null;
            try {
                BufferedReader reader = new BufferedReader(new FileReader(src));
                int i = 0;
                while ((line = reader.readLine()) != null) {
                    if (i != 0) {
                        res.append('
    ');
                    }
                    res.append(line);
                    i++;
                }
                reader.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return res.toString();
        }
    
        public static boolean write(String cont, File dist) {
            try {
                BufferedWriter writer = new BufferedWriter(new FileWriter(dist));
                writer.write(cont);
                writer.flush();
                writer.close();
                return true;
            } catch (IOException e) {
                e.printStackTrace();
                return false;
            }
        }
    }
  • 相关阅读:
    AnyVal与AnyRef
    安装Zookeeper
    Kafka
    ZooKeeper总结
    Idea中JDK为1.8,还提示Diamond types are not supported at this language level
    Hive 和 Mysql
    Spark练习代码
    响应状态码
    http简介
    csrf
  • 原文地址:https://www.cnblogs.com/Roysatm/p/5274346.html
Copyright © 2011-2022 走看看