zoukankan      html  css  js  c++  java
  • 三种方法解决android帮助文档打开慢

    经查是因为本地文档中的网页有如下两段js代码会联网加载信息,将其注释掉后就好了

    <link rel="stylesheet"
    href="http://fonts.googleapis.com/css?family=Roboto:regular,medium,thin,italic,mediumitalic,bold" title="roboto">
     <script src="http://www.google.com/jsapi" type="text/javascript"></script>

    用以下java代码就可以批量注释

    /*
     * 去掉Android文档中需要联网的javascript代码
     */
    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("D:/android/android-sdk-windows/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)\"\n(href)[=]\"(http)://(fonts.googleapis.com/css)[?](family)[=](Roboto)[:](regular,medium,thin,italic,mediumitalic,bold)\"( title)[=]\"roboto\">";
                    String src1 = "<script src=\"http://www.google.com/jsapi\" type=\"text/javascript\"></script>";
                    String dst = "";
                    //如果是html文件则注释掉其中的特定javascript代码
                    annotation(f, src, dst);
                    annotation(f, src1, dst);
                }
            } else {
                File[] fs = f.listFiles();
                depth++;
                for (int i = 0; i < fs.length; ++i) {
                    File file = fs[i];
                    searchDirectory(file, depth);
                }
            }
        }
    
        /*
         * f 将要修改其中特定内容的文件 
         * src 将被替换的内容 
         * dst 将被替换层的内容
         */
        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('\n');
                    }
                    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;
            }
        }
    }

    网上有种方法是通过shell删除那行js代码,非常简洁方便,比上面的的java方便100倍,不过不能删掉第一段js代码

    find . -name "*.html"|xargs grep -l "jsapi"|xargs sed -i '/jsapi/d'

    还有的方法是断网,或者用IE,firefox脱机浏览

  • 相关阅读:
    还在使用golang 的map 做Json编码么?
    Golang 性能测试(2) 性能分析
    golang 性能测试 (1) 基准性能测试
    消息队列 NSQ 源码学习笔记 (五)
    消息队列 NSQ 源码学习笔记 (四)
    消息队列 NSQ 源码学习笔记 (三)
    消息队列 NSQ 源码学习笔记 (二)
    消息队列 NSQ 源码学习笔记 (一)
    你不知道的空格
    Supervisor 使用和进阶4 (Event 的使用)
  • 原文地址:https://www.cnblogs.com/lawdong/p/2945197.html
Copyright © 2011-2022 走看看