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格式动态链接库方式调用的, 点击这里下载DLL动态链接库,函数详细说明和调用示例点击这里下载。
调用过程:
1:拷贝graccvs.h 和 graccvsDllTest.c到文件夹下。
2:拷贝 graccvs64.dll到工程中, 默认在exe输出位置。
3:编译即可 gcc graccvsDllTest.c -o graccvsDllTest.exe 。
头文件graccvs.h :
#include <stdio.h>
#include <stdlib.h>
//----------------------以下为函数说明----------------------
// 加载DLL,设置动态库需要的临时文件夹,且对此文件夹要有读写权限
typedef void (*LOAD)(char *tempDir);
/*
注册软件:
方式1:输入参数,corp为公司名称licText为注册码
方式2:把授权文件grauth.lic保存到动态库相同文件夹,调用TAuth函数(corp, licText都为空)系统自动加载grauth.lic
返回值:
0:免费版本许可为空
1:许可正常
2:序列号(公司授权名称)错误
3:加密数据格式错误
4:许可过期
5:许可验证错误
6:无效的许可
7:未知错误
注1:如果注册失败,系统变为免费版本
注2:免费版也需要调用此函数,corp和licText都为空
*/
typedef int (*AUTH)(char *corp, char *licText);
// 提取文件正文,并保存到目标文件
// inFilePtr文件名称指针, outFilePtr为TXT目标文件文件指针
typedef int (*TOTEXTFILE)(char *inFilePtr, char *outFilePtr);
// 提取文件正文,返回字符串指针
// inFilePtr输入文件指针, 返回UTF-8编码字符串数据指针(此指针需要使用FREESTRING函数释放内存)
typedef char* (*TOSTRING)(char *inFilePtr);
// 释放TOSTRING等函数的返回指针
typedef void (*FREESTRING)(char *p);
// 得到最后的错误信息
typedef char* (*LASTERR)();
// 提取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": &#