读书人

请教怎么不建立临时文件直接对数据库中

发布时间: 2012-01-23 21:57:28 作者: rapoo

请问如何不建立临时文件直接对数据库中Word对象进行全文搜索?帮忙UP者加分
问题如下:
数据库中存有Word文档(以二进制形式存储),现需要对字段中的Word文档进行全文搜索,而且不建立临时的Word文件。

目前已经实现了将Word文档从数据库中读出到一个Byte数组,并存成一个临时的Word文件,然后利用Word控件里将这个Word文件载入,再将其中的内容复制到字符串中,然后对其进行搜索

但是这种方法效率太低,请问各位大侠有没有什么方法可以不建立临时文件,直接在内存中将以Byte数组存储的Word文件直接赋值给Word控件?多谢!

[解决办法]
帮你Up一下,记得给分哈。。
[解决办法]

[解决办法]
使用ADO.net直接读取doc文件,解决select ,快得多
[解决办法]
mark & up
[解决办法]
如果可以使用oledb驱动以数据库的形式访问那就最好,直接select就可以了
或者分析doc文档格式,直接把内容解释出来更好。
[解决办法]
doc文档内容不一定有格式,所以你那种方法可能是唯一的方法
若想提高搜索速度只能对数据进行格式化,然后弄进数据库,使用select搜索(其实select需要索引搜索才有效提高速度)
[解决办法]
帮你Up一下,记得给分哈。。
[解决办法]
up
[解决办法]
建议还是建一个临时文档吧,本身Word处理都是这样的。那样再用Word的对象来做,我觉得这种方法安全。
[解决办法]
UP
正则表达式?
[解决办法]
建议:
存的时候分开存,把纯文本存下来
用空间换时间,只是存的时候多耗费一点时间
[解决办法]
MARK
[解决办法]
汗~!不是吧?
你的是WORD文档啊,SQL SERVER的全文索引吗?
SQL SERVER的全文索引本身就可以把WORD 、EXCEL的内容搜索出来,没必要搞什么临时文件。
建议楼主看一下SQL SERVER的全文索引的相关资料。
[解决办法]
哇,高手一出,问题....
[解决办法]
MARK
[解决办法]
up

读书人网 >C#

热点推荐