<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>中文Flex例子 &#187; Extract Text</title>
	<atom:link href="http://blog.minidx.com/tag/extract-text/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.minidx.com</link>
	<description>中文Adobe Flex例子,Flex实例教程,RIA资源,全文检索技术,算法和数据结构</description>
	<lastBuildDate>Thu, 31 Mar 2011 03:22:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>利用Minidx Extract-Text Com组件封装类的实现</title>
		<link>http://blog.minidx.com/2008/04/13/712.html</link>
		<comments>http://blog.minidx.com/2008/04/13/712.html#comments</comments>
		<pubDate>Sun, 13 Apr 2008 14:59:09 +0000</pubDate>
		<dc:creator>Minidxer</dc:creator>
				<category><![CDATA[Minidx相关]]></category>
		<category><![CDATA[Com组件]]></category>
		<category><![CDATA[doc]]></category>
		<category><![CDATA[Extract Text]]></category>
		<category><![CDATA[Minidx]]></category>
		<category><![CDATA[搜索引擎]]></category>

		<guid isPermaLink="false">http://blog.minidx.com/2008/04/13/712.html</guid>
		<description><![CDATA[这个主要是为解决PP提出的频繁初始化Com时效率问题。很抱歉这其实并不是一个封装的类，例子中只是将ITextExtractor指针设为全局变量,一次初始化,多次重复使用而已 （注意按下File选择文件的时候每次用的都是同一个指针），最后在按下退出程序的时候释放。不过原理是一样的，例子中ITextExtractor的指针进行封装就可以了。
具体的封装大家可以自己根据需要去实现,前提条件是保持ITextExtractor指针不被改变就可以了. 由于CoCreateInstance的关系，建议封装为SingleTon模式。








下载在这里。
第一次使用的话，其他的相关说明可以参照下面几篇文章：
利用Minidx Extract-Text Com组件从Word,Xls,Pdf&#8230;&#8230;等文件中读取文本内容
利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC2003 Demo
利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC Demo
你可能还对下列文章感兴趣:利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC Demo利用Minidx Extract-Text Com组件从Word,Xls,Pdf&#8230;&#8230;等文件中读取文本内容利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC2003 DemoSWIG发布1.3.33版本Minidx.RC1.1的中日英版本下载数都已经超过1K了]]></description>
		<wfw:commentRss>http://blog.minidx.com/2008/04/13/712.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC2003 Demo</title>
		<link>http://blog.minidx.com/2008/03/29/655.html</link>
		<comments>http://blog.minidx.com/2008/03/29/655.html#comments</comments>
		<pubDate>Sat, 29 Mar 2008 13:27:54 +0000</pubDate>
		<dc:creator>Minidxer</dc:creator>
				<category><![CDATA[Minidx相关]]></category>
		<category><![CDATA[Com组件]]></category>
		<category><![CDATA[Extract Text]]></category>
		<category><![CDATA[Minidx]]></category>
		<category><![CDATA[VC2003]]></category>
		<category><![CDATA[文本抽出]]></category>

		<guid isPermaLink="false">http://blog.minidx.com/2008/03/29/655.html</guid>
		<description><![CDATA[所有的用法与说明都和利用Minidx Extract-Text Com组件从doc,Xls,Pdf……等读取文本内容VC Demo一样，区别只是前面的工程是用VC2005创建的，而这次的工程是用VC2003创建的。
源代码可以从这里下载（Doc,Xls,Pdf等文件中抽取文本的Com组件及Demo(VC2003++)源代码）








Com组件使用时的注意事项等其他的相关信息清参照利用Minidx Extract-Text Com组件从doc,Xls,Pdf……等读取文本内容VC Demo一文。
你可能还对下列文章感兴趣:利用Minidx Extract-Text Com组件封装类的实现利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC Demo利用Minidx Extract-Text Com组件从Word,Xls,Pdf&#8230;&#8230;等文件中读取文本内容SWIG发布1.3.33版本双数组Trie(Double Array Trie)实现原理的一点剖析]]></description>
		<wfw:commentRss>http://blog.minidx.com/2008/03/29/655.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>利用Minidx Extract-Text Com组件从doc,Xls,Pdf&#8230;&#8230;等读取文本内容VC Demo</title>
		<link>http://blog.minidx.com/2008/01/10/373.html</link>
		<comments>http://blog.minidx.com/2008/01/10/373.html#comments</comments>
		<pubDate>Wed, 09 Jan 2008 16:47:46 +0000</pubDate>
		<dc:creator>Minidxer</dc:creator>
				<category><![CDATA[Minidx相关]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Com组件]]></category>
		<category><![CDATA[doc]]></category>
		<category><![CDATA[Extract Text]]></category>
		<category><![CDATA[IFilter]]></category>
		<category><![CDATA[indexing service]]></category>
		<category><![CDATA[Minidx]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[VC.net]]></category>
		<category><![CDATA[xls]]></category>
		<category><![CDATA[搜索引擎]]></category>

		<guid isPermaLink="false">http://blog.minidx.com/2008/01/10/373.html</guid>
		<description><![CDATA[ 《利用Minidx Extract-Text Com组件从Word,Xls,Pdf……等文件中读取文本内容》中具体的说明了Vb.Net中调用Minidx Extract-Text Com组件对Word,Excel,Pdf等各种文件进行文本抽取的用法。结果很多人都发邮件过来询问C++中如何调用（一些邮件会被Gmail判断为垃圾邮件……强烈建议有问题直接在本文后面留言或在这里提问，这样也可以减轻一点我的工作量，不必挨个回复）。抽空作了一个VC的Demo，工程用VS2005创建的，Unicode版本。下面对Demo稍微做一些说明，一些基本原理直接参照《利用Minidx Extract-Text Com组件从Word,Xls,Pdf……等文件中读取文本内容》就可以了，这里不再重复。








●Demo(VC++)源代码从这里下载(相关文档资料分类中的“Doc,Xls,Pdf等文件中抽取文本的Com组件及Demo(VC++)源代码”)
●执行Demo
①、双击run.bat执行，注册Com组件
 
②、双击demo_vc\release或者demo_vc\debug目录下的demo_vc.exe
 
③、点“File”，选择对象文件（ex: 从demo_vc\test-data中选择）
 
④、选中文件，查看抽取文本结果。（下面分别是中日英Word的抽取结果）
  
 
注意:抽取文本对象文件需要有读写权限，正在编辑中的文件抽取文本时可能会出错。
●实际调用方法：
①、复制下面三个文件到自己工程的相应目录下
・ExtractText.dll・ExtractText.h・ExtractText_i.c
②、在需要的文件中用下面的代码引入
#include &#8220;ExtractText.h&#8221;#include &#8220;ExtractText_i.c&#8221;
③、抽取文本部分代码：

   1:  ITextExtractor *te = NULL;
   2:  // Declare and HRESULT and a pointer to the Simple_ATL interface
   3:  HRESULT           [...]]]></description>
		<wfw:commentRss>http://blog.minidx.com/2008/01/10/373.html/feed</wfw:commentRss>
		<slash:comments>80</slash:comments>
		</item>
		<item>
		<title>利用Minidx Extract-Text Com组件从Word,Xls,Pdf&#8230;&#8230;等文件中读取文本内容</title>
		<link>http://blog.minidx.com/2007/12/31/334.html</link>
		<comments>http://blog.minidx.com/2007/12/31/334.html#comments</comments>
		<pubDate>Mon, 31 Dec 2007 13:26:16 +0000</pubDate>
		<dc:creator>Minidxer</dc:creator>
				<category><![CDATA[Minidx相关]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Com组件]]></category>
		<category><![CDATA[doc]]></category>
		<category><![CDATA[Extract Text]]></category>
		<category><![CDATA[IFilter]]></category>
		<category><![CDATA[indexing service]]></category>
		<category><![CDATA[Minidx]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[VB.net]]></category>
		<category><![CDATA[xls]]></category>
		<category><![CDATA[搜索引擎]]></category>

		<guid isPermaLink="false">http://blog.minidx.com/2007/12/31/334.html</guid>
		<description><![CDATA[不少人对Google，Baidu等搜索引擎可以“找到”你放在服务器上的Word的Doc,Excel的xls以及Pdf等各种文件而感到惊叹不已，也有不少人发来邮件询问我Minidx文件管理器中从各种格式的文件中读取文本内容是如何实现的。Linux平台实现起来比较复杂一些，不过对于Windows用户来说，其实利用微软Ifilter的Indexing service接口，可以比较容易的实现上面的功能。Minidx支持200多种文件格式，其实也是利用了Ifilter的接口。实现的基本原理，就是写一个Com组件，去查找系统中相应文件格式的API接口所在的Dll路径，然后调用抽取文本。








在上面的微软Ifilter中有关于IFilter的基本概念的介绍，这里不再重复，另外在codeproject的Using IFilter in C#中，可以找到C#的实现并且可以下载到源代码。因为性能上的考虑，Minidx文件管理器的这一部分完全利用C++实现，并封装为Com组件，下面主要是对如何通过调用这一Com组件在自己的程序中实现Doc，Xls，Pdf，msg等等文本阅读等功能作一些说明。
●Demo压缩包构造（压缩包可以从这里下载）
demo_vb.zip&#8212;&#8212;&#8212;&#8211;demo_vb.sln&#160;&#160; 整个解决方案（solution）文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;&#8212;&#8212;demo_vb.suo　用户配置文件
　　　　　　　　　 &#124;&#8212;&#8212;&#8212;demo_vb&#8212;-bin&#8212;&#8212;&#8211;Debug&#8212;-demo_vb.exe&#160;&#160; Debug版本目标文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;&#8212;&#8212;Release&#8212;demo_vb.exe&#160; Release版本目标文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;My Project(忽略)
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;obj&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 编译生成的临时文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;demo_vb.vbproj&#160;&#160;&#160;&#160;&#160; 工程文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;ExtractText.dll&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 文本抽取Com组件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;Form1.Designer.vb&#160;&#160; Demo的GUI文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;Form1.resx&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 资源文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;Form1.vb&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Demo的源代码文件
&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#124;&#8212;run.bat&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Com组件注册命令
●执行Demo
①、双击run.bat执行，注册Com组件
 
②、双击demo_vb\bin\Release或者demo_vb\bin\Debug目录下的demo_vb.exe
 
③、点“File”，选择对象文件
 
④、选中文件，查看抽取文本结果。（下面分别是中日英Word的抽取结果）
   
注意:抽取文本对象文件需要有读写权限，正在编辑中的文件抽取文本时可能会出错。
●Demo代码说明
首先当然需要导入Dll组件，下面的代码很简单，也都有注释，应该不难理解，这里不再累述，有什么不明白或者有什么问题的话，可以提出来一起探讨，：）

   1:  '-----------------------------
   2:  ' desc: Extract text from selected file
   3:  '-----------------------------
  [...]]]></description>
		<wfw:commentRss>http://blog.minidx.com/2007/12/31/334.html/feed</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)
Database Caching 2/18 queries in 0.170 seconds using disk
Object Caching 396/733 objects using disk

Served from: blog.minidx.com @ 2012-02-09 22:48:52 -->
