Graccvs文件正文提取开发组件支持各种文件提取正文,为Lucene/CLucene, Elasticsearch, Sphinx等全文检索工具,为OA,ERP,CRM系统使用文件提供文件正文使用和搜索,支持常见各种文件格式”.pdf", ".doc", ".odt", ".docx", ".dotm", ".docm", ".wps", ".xls", ".xlsx", ".xlsm", ".xltm", ".et", ".ppt", ".pptx", ".potm", ".pptm", ".ppsm", ".dps", ".ofd"(电子发票版式文件), ".rtf",".html", ".htm", ".mht", ".mhtml", ".eml", ".emmx", "xmind", "gmind", ".chm", ".zip" 等。
Graccvs提供免费版本,以下是调用过程及代码,起来文件输入修改为要提取的文件名称和类型即可。
以下是使用DLL过程:
1:建立Console Application工程或者 VCL Application工程。
2:拷贝 graccvs64.dll到工程中, 默认在exe输出位置。
3:拷贝graccvsTest.dpr文件相关代码 。
4:编译运行工程 。
5:点击这里下载完整工程包,这里下载最新DLL文件。
graccvsTest.dpr :
program graccvsTest;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
Windows,
Types,
DateUtils,
Classes;
type
// ----------------------以下为函数说明----------------------
// DLL加载并设置动态库需要的临时文件夹,且对此文件夹要有读写权限
TLoad = procedure(TempDir: PRawByteString); cdecl;
(*
注册软件:
方式1:输入参数,corp为公司名称licText为注册码
方式2:把授权文件grauth.lic保存到动态库相同文件夹,调用TAuth函数(corp, licText都为空)系统自动加载grauth.lic
返回值:
0:免费版本许可为空
1:许可正常
2:序列号(公司授权名称)错误
3:加密数据格式错误
4:许可过期
5:许可验证错误
6:无效的许可
7:未知错误
注1:如果注册失败,系统变为免费版本
注2:免费版也需要调用此函数,corp和licText都为空
*)
TAuth = function(Corp, LicText: PRawByteString): Cardinal; cdecl;
// 释放TToString, THttpToString等函数的返回指针
TFreeString = procedure(P: PRawByteString); cdecl;
// 得到最后的错误信息
TLastError = function(): PRawByteString; cdecl;
// 提供文件正文
// Infile输入文件地址, 返回UTF-8编码字符串数据指针(此指针需要使用TFreeString函数释放内存)
TToString = function(Infile: PRawByteString): PRawByteString; cdecl;
// 提供文件正文,并保存到目标文件
// Infile输入文件地址, Outfile为TXT目标文件文件地址
TToTextFile = function(Infile, Outfile: PRawByteString): Cardinal; cdecl;
// 提取Http/Https文件,返回字符串数据指针
// Url=Http/Https地址
// FileExt=文件类型(比如:".pdf"),
// Timeout=超时设置,超过此数值系统终止下载文件。单位为毫秒,默认为0(等待文件下载直到完成)
// HttpParams=JSON格式Header数据和Cookie数据,默认为空
(*
JSON格式如下:
{"headers":
[{名称1: 值1},{名称2: 值2},...],
"cookies":[
{"name": 名称(字符串), "value": 值(字符串), "expires": 有效期(整数,单位毫秒),
"path": 路径(字符串), "domain": 域名(字符串)},
{"name": 名称(字符串), "value": 值(字符串), "expires": 有效期(整数,单位毫秒),
"path": 路径(字符串), "domain": 域名(字符串)}
...
]}
例如:
{"headers":[{"client_id": "g01x9"}, {"client_secret": "e23c89cc9fe"}, {"client_index": 10092}],
"cookies":[{"name": "ga", "value": "1020", "expires":36000000, "path": "/hx/", "domain":"www.gaya-soft.cn"},
{"name": "xc3", "value": "10099", "expires":240000, "path": "", "domain":""}]}
*)
// 返回UTF-8编码字符串数据指针(此指针需要使用TFreeString函数释放内存)
THttpToString = function(Url, FileExt: PRawByteString; Timeo