广

android开发

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    android帮助文档打开慢的三种解决方法

    2018-04-06 10:41:22 次阅读 稿源:互联网
    广告

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

    代码如下:

    <script src="http://www.google.com/jsapi" type="text/javascript"></script>

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

    代码如下:

    package cn.sd.fxd.android;

    /*
     * 去掉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(".*?.html")) {
                    String src = "<script src=/"http://www.google.com/jsapi/" type=/"text/javascript/"></script>";
                    String dst = "<!-- <script src=/"http://www.google.com/jsapi/" type=/"text/javascript/"></script> -->";
                    //如果是html文件则注释掉其中的特定javascript代码
                    annotation(f, src, 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.replaceAll(src, dst);
            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倍,I HATE JAVA

    代码如下:

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

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

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告