数据格式转换 (三)Office文档转HTML

一、引言

Android中通过findViewById在布局文件中找到需要的View,加入一个Activity里面有许多的View需要初始化,那将是一件很繁琐的事情。当然Google一下你会发现有很多Android Annotations框架。比如比较有名的“Android Annotations”,这样的框架很复杂,用起来也比较麻烦,还有一些BUG,第一次使用也花费了不少时间研究。也许你在项目中只希望用到
Inject View这个功能,又或者你想知道这个实现的原理是怎样的。本文主要是解决这两个问题,实现一个最简单的ViewInject.

二、原理

原理是在Activity加载好后通过找到Activity中使用注解的字段,再通过Java反射的方式,动态的给这个字段设置值。

1、首先你需要了解一下Java的注解是如何工作的,如果你不了解可以先看一下相关的资料,这个比较简答。首先定义我们的注解类:

/**
 * view inect by id
 *
 * @author Lucky
 *
 */
@Target(ElementType.FIELD)//表示用在字段上
@Retention(RetentionPolicy.RUNTIME)//表示在生命周期是运行时
public @interface ViewInject {
	int value() default 0;
}

2、我们需要定义个BaseActivity,在这个类中来解析注解

/**
 *
 * @author Lucky
 *
 */
public abstract class BaseActivity extends FragmentActivity {
	/**
	 * get content view layout id
	 *
	 * @return
	 */
	public abstract int getLayoutId();

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(getLayoutId());
		autoInjectAllField();
	}
	/**
	 * 解析注解
	 */
	public void autoInjectAllField() {
		try {
			Class<?> clazz = this.getClass();
			Field[] fields = clazz.getDeclaredFields();//获得Activity中声明的字段
			for (Field field : fields) {
				// 查看这个字段是否有我们自定义的注解类标志的
				if (field.isAnnotationPresent(ViewInject.class)) {
					ViewInject inject = field.getAnnotation(ViewInject.class);
					int id = inject.value();
					if (id > 0) {
						field.setAccessible(true);
						field.set(this, this.findViewById(id));//给我们要找的字段设置值
					}
				}
			}
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (IllegalArgumentException e) {
			e.printStackTrace();
		}
	}
}

3、完成上面的步骤后就是如何去使用了,示例代码如下:

public class TestActivity extends BaseActivity {

	@ViewInject(R.id.claim_statement)
	private WebView mWebView;

	@Override
	public int getLayoutId() {
		// TODO Auto-generated method stub
		return R.layout.activity_claim;
	}

}

这样就可以了。几行代码可以大大的提高工作效率。

三、参考资料

1、http://www.2cto.com/kf/201405/302998.html

数据格式转换 (三)Office文档转HTML,布布扣,bubuko.com

时间: 2024-10-03 23:07:46

数据格式转换 (三)Office文档转HTML的相关文章

java将office文档pdf文档转换成swf文件在线预览

java将office文档pdf文档转换成swf文件在线预览 第一步,安装openoffice.org   openoffice.org是一套sun的开源office办公套件,能在widows,linux,solaris等操作系统上执行. 主要模块有writer(文本文档),impress(演示文稿),Calc(电子表格),Draw(绘图),Math(公式),base(数据库) 笔者下载的是openoffice.org 3.3.0.下载完直接安装即可.      但是,我们还需要启动openof

AOPR快速破解Office文档密码的三个技巧

Advanced Office Password Recovery是一款专业的Office密码破解工具,AOPR软件并不复杂但是可以在极短的时间内轻松破解Excel2013或者Word2016的密码.本文将具体介绍几个在使用Advanced Office Password Recovery破解Office文档密码的技巧.  Advanced Office Password Recovery密码破解工具 技巧一:估计Office文档密码特点 为了尽可能缩短Advanced Office Passw

教你如何将word转换成PDF文档使用

对于各种不同文档格式的转换对文字工作者来说可谓是"家常便饭",而最让人头疼的莫过于office文档与pdf文档之间的互相转换.有时候遇到需要文字编辑的就得转换成word文档,有时候要成稿传输了,又得转换成pdf格式,这来回之间的转换,如果没有一个好的转换器作为帮手,还真的是会让人抓狂. 今天小编和大家介绍一款小编平时用的转换器软件.除了将word转成pdf,更重要的是能够对一些常见类型的文档转换格式.像word.ppt.excel.pdf等都可以转为你需要的文档格式.另外还能对文档进行

在线office文档编辑NTKO使用心得

目录 前言 什么是ntko 准备工作 实战演练 总结 一.前言 Web开发中经常需要用到在线处理office文档的功能,现在市面上有一些常用的Web页面调用显示Office的控件技术,用起来很方便.有一些第三方ActiveX浏览器控件:比如科瀚的SOAOffice中间件.卓正软件的pageoffice控件.WebOffice控件还有我这篇文章所要说到的NTKO. 二.什么是NTKO 通俗易懂来讲就是能够直接在浏览器上查看编辑word文档,并保存到web服务器上的控件. 借用官方的话,是能够在IE

Java实现web在线预览office文档与pdf文档实例

https://yq.aliyun.com/ziliao/1768?spm=5176.8246799.blogcont.24.1PxYoX 摘要: 本文讲的是Java实现web在线预览office文档与pdf文档实例, 1.首先我们需要找到可以把office转换成pdf的方法,查找资料发现有openoffice这一软件可以把office转换成pdf,这一软件先下载下来,然后记住自己安装的在那个位置.然后在cmd环境下进入安装目录的program目 云计算 云服务器ECS 大数据 建站 备案 文档

PDF如何转换成word文档

PDF如何转换成word文档 工作闲暇之际想将报刊.纸质文件这些文本资料上的文字变成自己的“东西”,但苦于文字资料太长,工作时间又紧,加上自己的打字速度太慢而不像花钱找专业打字员,有没有更好的方法来解决?答案是肯定的,那就是在网上下载一个迅捷PDF转换器软件,只需几分钟就能搞定,为你的编辑文档省钱又省力. 这里运用迅捷PDF转换器正式版本(当前最新版PDF文件转换软件)为例,利用软件内置的识别技术来解析PDF转Word.Excel.TXT等文本,希望对感兴趣的朋友有所帮助. 第一步,选择形式,勾

office文档在线预览 (doc、docx、ppt、pptx、xls、xlsx)

要想实现office文档在线预览,可以使用红樱枫软件公司开发的数据格式转换软件HTML Filter,该产品可以以程序库的形式提供给用户,提供各种程序接口,如:C/C++.Java..Net等接口,供用户将软件镶嵌在自己的系统中.通过调用本产品的提供的API功能接口,实现MS Office系列文档到HTML的快速转换.本产品在国内外得到了广泛的应用,在国内有腾讯.搜狐等多家知名企业使用本产品.对多种文档进行统一管理,编辑,检索和浏览.用户可以使用本产品,十分便利的将office文档Word,Ex

Java实现office文档与pdf文档的在线预览功能

最近项目有个需求要java实现office文档与pdf文档的在线预览功能,刚刚接到的时候就觉得有点难,以自己的水平难以在三四天做完.压力略大.后面查找百度资料.以及在同事与网友的帮助下,四天多把它做完.查找资料发现我们要实现的过程就是把office转换成pdf,当然pdf就不用转换了.然后在pdf转换为swf文件,在浏览器实现预览swf文件.整个过程就是这样,看起来很简单,实际操作起来会出现各种问题.下面我就把自己写的这一小功能记录下来. 1.首先我们需要找到可以把office转换成pdf的方法

在线查看PDF和office文档的设计与实现

楼主最近在弄一个在线预览附件的小功能点,在开发过程中走了不少弯路,现总结了一些方法,供广大同行使用,节约时间,少走弯路 话不多说,要实现这个小功能,目前主要是有如下3种比较可行的方式,先说实现的思路设计与他们的优缺点 第一种:先把附件office文档(DOC,PPT,EXCLE,TXT)转为PDF格式,这里需要用一个OpenOffice的东东来转换,或者libreoffice也是可以的,然后把PDF转为SWF方式,然后在前台页面使用Flexpaper插件进行播放即可实现.这种方式的好处在于可以兼