`
chensl
  • 浏览: 57962 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java程序 处理 andrid本地帮助文档打开慢的方式

 
阅读更多

    下载本地的android自带sdk帮助文档由于有被墙的google地址,可以通过下面代码批量处理:

 

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 FormatAndroidDoc {
	public static int j = 1;

	public static void main(String[] args) {
		 // doc文档存储路径
		String docspath = "/Applications/adt-bundle-mac-x86_64-20140702/sdk/docs";
		File file = new File(docspath);
		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 = FormatAndroidDoc.read(f);
		content = content.replaceFirst(src, dst);
		int ll = content.lastIndexOf(src);
		System.out.println(ll);
		FormatAndroidDoc.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;
		}
	}
}

 

 

分享到:
评论

相关推荐

    android下载word文档并打开

    可以使用`Intent.createChooser()`创建一个文件选择器,让用户从多个应用中选择打开方式。这样即使用户未安装特定的Word处理应用,也可以用其他支持的阅读器打开。 6. **错误处理与日志记录**: 在下载和打开过程...

    Android读取本地json文件的方法(解决显示乱码问题)

    在Android应用开发中,...理解并掌握这些基本概念和技巧,能帮助开发者更好地处理Android应用中的各种任务,包括读取本地JSON文件。在处理中文乱码问题时,关键在于明确指定字符编码,并确保编码与解码过程的一致性。

    android 打开各种文档的demo

    在Android平台上,开发人员经常需要处理用户打开不同类型文档的需求,如Word、Excel、PowerPoint、PDF等。这个“android 打开各种文档的demo”提供了一个实用的示例,展示了如何在Android应用中实现这一功能。下面将...

    android打开各种文件

    在处理文件打开时,我们通常使用隐式Intent,因为这种Intent不直接指定接收者,而是通过指定动作(ACTION_VIEW)和数据URI(file://或content://)来让系统寻找能够处理该Intent的应用程序。 以下是创建一个隐式...

    Android程序打开PDF

    总之,Android程序打开PDF涉及的关键技术是使用第三方库,如`android-pdfview`,来实现PDF文件的本地加载和展示。通过集成这个库,可以提供一个流畅的阅读界面,同时还能自定义各种交互行为,满足项目的特定需求。

    android中读取本地文件demo

    7. **文件打开**:打开文件时,需要根据文件类型决定用何种方式处理。对于Word文件,可以调用系统的intent,让用户选择合适的应用程序打开。对于PDF,同样可以使用intent,或集成PDF阅读器库直接在应用内查看。 8. ...

    Android打开H5网页完整AndroidStudio工程

    本项目"Android打开H5网页完整AndroidStudio工程"旨在帮助开发者快速理解和实现这一功能。下面将详细介绍这个项目中的关键知识点。 1. **WebView组件**: Android中的WebView是Android SDK提供的一个核心组件,它...

    android webView加载html 并引用本地资源(图片、字体库)

    在Android开发中,WebView是一个非常重要的组件,它允许我们在应用程序中内嵌网页内容。这篇教程将详细介绍如何在WebView中加载HTML,并引用本地的资源,如图片和字体库。 首先,让我们理解WebView的基本用法。在...

    android打开word的方法

    在Android平台上,打开Word文档通常涉及两种主要方法:一种是通过集成特定的库来解析文件,另一种是利用系统 Intent 系统来调用已安装的应用程序进行打开。下面将详细介绍这两种方法。 首先,我们来看看使用第三方...

    Android日记本小程序.rar

    这个项目包含了完整的源代码和详细的说明文档,旨在帮助初学者,特别是对软件开发有兴趣的“大软”(大学软件工程专业学生)快速理解和学习Android开发。 首先,Android开发基于Java语言,因此你需要了解基本的Java...

    android XML本地解析实例

    XML本地解析是Android应用中处理XML文件的重要环节,它可以让你读取、理解和操作XML文档中的数据。本教程将深入探讨Android XML本地解析的实例。 一、XML解析方式 1. DOM解析:Document Object Model(DOM)解析器...

    Android程序设计基础

     Android为用户与移动应用程序交互提供了全新的方式,同时也提供了实现这些交互的底层技术保障。而Android最令人心动之处,莫过于你可以为它编写软件,本书恰好可以为你提供这方面的帮助。  本书读者对象  阅读...

    个人写的Android文件浏览器源码

    这个“个人写的Android文件浏览器源码”提供了一种实现方式,可以帮助开发者理解和学习如何在Android环境中构建这样的应用。 首先,Android文件浏览器的核心功能包括: 1. **目录遍历**:程序需要能够列出设备的根...

    Android assets 和 res/raw 区别。读取本地网页,读取文本字体样式,读取视频。

    在Android应用开发中,`assets`和`res/raw`目录都是用来存储应用程序资源的重要部分,但它们之间存在一些关键区别。这两个目录都有各自的用途和访问方式,开发者需要根据实际需求来选择合适的存放位置。 首先,我们...

    Android读取中文文件乱码解决方法

    如果处理不当,可能会遇到中文乱码的问题,尤其是在读取本地文件或者从网络下载文件时更为常见。本文将详细介绍如何解决Android平台上的中文乱码问题,并提供一个具体的示例代码。 #### 二、中文乱码的原因分析 ...

    Android studio CMake方式引入jni .a文件

    在Android Studio中,打开`build.gradle`(Module: app)文件,确保你的项目启用了CMake。你需要添加以下配置: ```groovy android { defaultConfig { externalNativeBuild { cmake { cppFlags "" abiFilters ...

    解决android studio 打开java文件 内容全变了的问题

    在使用Android Studio开发Android应用程序的过程中,有时可能会遇到一个棘手的问题,即打开Java源代码文件时,文件内容显示异常,与实际代码不一致。这个问题可能会让开发者感到困惑,因为代码在其他文本编辑器如...

    Android 文件流

    理解并熟练运用Java的I/O流体系,结合Android特有的文件操作方式,能帮助开发者高效地实现文件的读写、网络下载等功能。在实际项目中,应根据需求选择合适的流类型,同时注意性能优化和异常处理。

    Android访问windows共享的文件夹,并进行文件读写de SMBJ jar包

    在Android开发中,有时...总的来说,通过SMBJ库,Android开发者可以轻松地实现在Android设备上访问和操作Windows共享文件夹,实现跨平台的文件读写功能,这对于需要在不同操作系统间共享数据的应用程序来说非常有用。

    Android中http请求及文件读写操作方法

    在Android开发中,进行HTTP请求和文件读写是常见的任务,尤其在与服务器交互和存储本地数据时。本文将详细讲解这两个方面的知识点。 首先,我们来看Android中的HTTP请求。HTTP请求通常用于从服务器获取数据,如JSON...

Global site tag (gtag.js) - Google Analytics