用JAVA处理文本与二进制数据混合大文件

本文探讨了如何使用JAVA处理大型文本和二进制数据混合的PDF文档,尤其是在全文检索时如何提取附件内容。通过BufferedReader和FileInputStream类结合,实现了对文本和二进制数据的有效处理,应对了大型文件处理中的挑战,如合理选择buffer大小、指示文本数据的拼接和二进制数据的连续性保持。
摘要由CSDN通过智能技术生成
我们一般常见的文件主要有三种形式:文本文件、二进制数据文件、混合文件。作为混合文档的处理,特别是大型混合文档的处理,开发人员面临着特殊的挑战:
 
其一,需要对二进制数据进行定位,并取得二进制数据内容而进行下一步处理;
 
其二,要根据二进制数据的上下文,取得二进制数据的相关背景信息,才可能进行下一步处理;
 
其三,面对大型文件,一次将所有数据统统读入内存进行处理往往不现实。而在分次读入文件时,如何控制二进制数据的连续性和正确性,是一个不能忽视的问题。
 
本文即对如上三个问题进行一些探讨,而提出用JAVA对大型二进制数据和文本混合文件进行有效处理的一种可行方法。
 
关于XML混合文件的处理方法,已有文章进行论述。而且,针对XML文档处理,我们可以使用JAXP等等进行处理,本文对这些问题不再赘述。有兴趣读者请参阅 http://www-128.ibm.com/developerworks/cn/xml/x-wxxm33/。这里,我们主要以PDF文档为例,讨论一下大型混合文档的处理。
 
1、问题描述:
 
在pdf-1.3以后,pdf文档中可以嵌入附件注释,如下图所示。
在对pdf文档进行全文检索的时候,如果不能对附件注释的内容进行提取,则有可能不能检索出带有某个关键词的pdf文档。基于这种情况,我们有必要提取出pdf文档中的附件注释内容,根据实际需求,以决定对附件注释内容如何进行全文检索。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值