您的位置:程序门 -> .net技术 -> c#



请问如何不建立临时文件直接对数据库中word对象进行全文搜索?帮忙up者加分


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


请问如何不建立临时文件直接对数据库中word对象进行全文搜索?帮忙up者加分[已结贴,结贴人:beactived]
发表于:2007-02-13 13:28:45 楼主
问题如下:
        数据库中存有word文档(以二进制形式存储),现需要对字段中的word文档进行全文搜索,而且不建立临时的word文件。

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

        但是这种方法效率太低,请问各位大侠有没有什么方法可以不建立临时文件,直接在内存中将以byte数组存储的word文件直接赋值给word控件?多谢!
发表于:2007-02-13 13:32:521楼 得分:1
帮你up一下,记得给分哈。。
发表于:2007-02-13 13:34:472楼 得分:1
该回复于2007-10-26 14:26:28被管理员删除
发表于:2007-02-13 14:06:063楼 得分:1
使用ado.net直接读取doc文件,解决select   ,快得多
发表于:2007-02-13 15:56:564楼 得分:1
mark   &   up
发表于:2007-02-13 16:27:415楼 得分:1
如果可以使用oledb驱动以数据库的形式访问那就最好,直接select就可以了
或者分析doc文档格式,直接把内容解释出来更好。
发表于:2007-02-13 16:48:516楼 得分:1
doc文档内容不一定有格式,所以你那种方法可能是唯一的方法
若想提高搜索速度只能对数据进行格式化,然后弄进数据库,使用select搜索(其实select需要索引搜索才有效提高速度)
发表于:2007-02-13 17:25:587楼 得分:1
帮你up一下,记得给分哈。。
发表于:2007-02-13 17:36:338楼 得分:1
up
发表于:2007-02-13 19:24:509楼 得分:0
多谢各位支持,希望能有更好的答案,自己顶一下!
发表于:2007-02-14 18:30:3710楼 得分:0
自己再顶一下
发表于:2007-02-15 18:04:4811楼 得分:0
up
发表于:2007-02-15 18:15:0612楼 得分:1
建议还是建一个临时文档吧,本身word处理都是这样的。那样再用word的对象来做,我觉得这种方法安全。
发表于:2007-02-15 19:58:2513楼 得分:0
系统需要处理上万条的记录,建立临时文档的处理速度太慢了
发表于:2007-02-15 20:26:5414楼 得分:1
up
正则表达式?
发表于:2007-02-15 21:09:1515楼 得分:1
建议:
存的时候分开存,把纯文本存下来
用空间换时间,只是存的时候多耗费一点时间
发表于:2007-02-16 11:05:1216楼 得分:1
mark
发表于:2007-02-16 11:52:3417楼 得分:85
汗~!不是吧?
你的是word文档啊,sql   server的全文索引吗?
sql   server的全文索引本身就可以把word   、excel的内容搜索出来,没必要搞什么临时文件。
建议楼主看一下sql   server的全文索引的相关资料。
发表于:2007-02-16 11:58:4118楼 得分:0
你把word、excel等office文件写到sql   server的image类型的字段里,并建立全文索引,就可以直接把文档里的内容搜索出来。
发表于:2007-02-16 13:22:5319楼 得分:1
哇,高手一出,问题....
发表于:2007-02-16 13:29:2520楼 得分:1
mark
发表于:2007-02-16 13:57:0521楼 得分:1
up
发表于:2007-02-20 09:39:5622楼 得分:0
多谢siugwan(开怀),问题已解决^_^
结帖。


快速检索

最新资讯
热门点击