文件解析库doctotext安装和使用
2015-01-29 14:30
232 查看
安装doctotext
1 安装GCC到4.6以上
tar jxf gcc-4.7.0.tar.bz2
cd gcc-4.7.0
编译
./contrib/download_prerequisites
mkdir build
cd build
../configure --disable-checking --disable-multilib --enable-languages=c,c++
make
make install
卸载旧版本
yum remove gcc
yum remove gcc-c++
updatedb
链接到新版本
[plain] view plaincopy
cd /usr/bin
ln -s /usr/local/gcc/bin/gcc gcc
ln -s /usr/local/gcc/bin/g++ g++
添加man帮助
vi /etc/man.config
添加gcc的man路径到配置文件中
MANPATH /usr/local/gcc/share/man
保存退出即可生效,可使用man gcc查看帮助
gcc安装过程错误排查列表
错误:
gnu/stubs-32.h:No such file or directory
解决方法:
yum install glibc-devel.i686
2 编译doctotext源码(只需要编译即可使用)
tar jxf doctotext-4.0-20140202.tar.bz2
cd doctotext
make
doctotext编译过程错误排查列表
错误:
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_unhook()@GLIBCXX_3.4.15'
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@GLIBCXX_3.4.15'
解决方法:
升级gcc到4.6以上
错误:
解决方法:
升级gcc到4.6以上
使用
编译完成后,在doc目录下面会说明实例的html页,下面例举里面的一个程序实例
#include "metadata.h"
#include "plain_text_extractor.h"
#include <iostream>
#include <string>
using namespace doctotext;
int main(int argc, char *argv[])
{
std::string file_name = "test.doc";
PlainTextExtractor extractor;
extractor.setVerboseLogging(true);
Metadata meta;
if (!extractor.extractMetadata(file_name, meta))
return 1;
std::cout << "Autor: " << meta.author() << std::endl;
std::cout << "Last modified by: " << meta.lastModifiedBy() << std::endl;
std::string text;
if (!extractor.processFile(file_name, text))
return 1;
std::cout << text << std::endl;
return 0;
}
编译测试源码
将上面的代码存储为main.cpp,由于doctotext编译完成后的动态库在doctotext/build目录下,并没有安装在系统目录下面,所以main.cpp也需要放在
doctotext/build目录下
编译链接测试源码
gcc main.cpp -L . -I. -ldoctotext
源码中指定了解析的文件名称test.doc,拷贝一个名为test.doc的文件到doctotext/build目录下
运行:
./a.out
即可解析文件
1 安装GCC到4.6以上
tar jxf gcc-4.7.0.tar.bz2
cd gcc-4.7.0
编译
./contrib/download_prerequisites
mkdir build
cd build
../configure --disable-checking --disable-multilib --enable-languages=c,c++
make
make install
卸载旧版本
yum remove gcc
yum remove gcc-c++
updatedb
链接到新版本
[plain] view plaincopy
cd /usr/bin
ln -s /usr/local/gcc/bin/gcc gcc
ln -s /usr/local/gcc/bin/g++ g++
添加man帮助
vi /etc/man.config
添加gcc的man路径到配置文件中
MANPATH /usr/local/gcc/share/man
保存退出即可生效,可使用man gcc查看帮助
gcc安装过程错误排查列表
错误:
gnu/stubs-32.h:No such file or directory
解决方法:
yum install glibc-devel.i686
2 编译doctotext源码(只需要编译即可使用)
tar jxf doctotext-4.0-20140202.tar.bz2
cd doctotext
make
doctotext编译过程错误排查列表
错误:
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_unhook()@GLIBCXX_3.4.15'
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@GLIBCXX_3.4.15'
解决方法:
升级gcc到4.6以上
错误:
解决方法:
升级gcc到4.6以上
使用
编译完成后,在doc目录下面会说明实例的html页,下面例举里面的一个程序实例
#include "metadata.h"
#include "plain_text_extractor.h"
#include <iostream>
#include <string>
using namespace doctotext;
int main(int argc, char *argv[])
{
std::string file_name = "test.doc";
PlainTextExtractor extractor;
extractor.setVerboseLogging(true);
Metadata meta;
if (!extractor.extractMetadata(file_name, meta))
return 1;
std::cout << "Autor: " << meta.author() << std::endl;
std::cout << "Last modified by: " << meta.lastModifiedBy() << std::endl;
std::string text;
if (!extractor.processFile(file_name, text))
return 1;
std::cout << text << std::endl;
return 0;
}
编译测试源码
将上面的代码存储为main.cpp,由于doctotext编译完成后的动态库在doctotext/build目录下,并没有安装在系统目录下面,所以main.cpp也需要放在
doctotext/build目录下
编译链接测试源码
gcc main.cpp -L . -I. -ldoctotext
源码中指定了解析的文件名称test.doc,拷贝一个名为test.doc的文件到doctotext/build目录下
运行:
./a.out
即可解析文件
相关文章推荐
- Extjs 使用fileText 文件上次后 无法解析后台返回的json问题
- 文件解析库doctotext源码分析
- [Java学习]使用digester 解析xml配置文件
- 在程序安装时添加IIS6对.jse文件的解析
- 使用GHOST镜像文件在VMWARE WROKSTATION上安装系统(图)
- vsftpd安装和配置文件的注释解析
- GemBox.ExcelLite破解版,可以在没有安装Office的情况,使用.net代码操作Excel文件
- 创建Text文件,使用不同的编码会造成生成乱码的现象和解决方法
- Ubuntu7.04使用totem-xine,安装libxine1-ffmpeg后,rm文件播放无声问题的解决办法
- 使用Digester解析XML文件和JAVA对象的映射
- 使用digester 解析xml配置文件
- 使用XmlTextWriter生成XML文件
- 在JSP开发中使用jdom解析临时存放数据的XML文件
- 使用PHP DOM-XML创建和解析XML文件
- Sql Server 2005 for Mobile 安装文件路径及使用
- python3解析库lxml的安装与基本使用
- 使用Struts Digester来解析XML文件
- 使用JExcel解析Excel文件
- 使用INF安装文件
- 扩展使用.INF文件-制作免安装的绿色软件