2016-05-17 43 views
0

我正在開發一個C#應用程序,它將搜索PDF文件列表中的特定單詞。 結果應該返回: 1)找到該單詞的PDF文件; 2)那些PDF的頁面找到該單詞; 3)將文字的一部分放在找到該單詞的位置,並突出顯示該單詞。使用C#和SQL Server搜索PDF中的特定字

我已經在我的研究發現了下述一些解決方案: - 將PDF文件到SQL Server作爲VARBINARY和使用SQL Server的全文檢索; - 使用SQL SERVER的Filetables資源和SQL SERVER的全文搜索; - 將PDF文件上傳到物理文件夾,並使用ITextSharp插件完成任務。

是否有人有過這方面的經驗,我該怎麼做? 在此先感謝!

回答

0

您必須找到某種方式來實時讀取PDF,或在搜索請求之前將其文本存儲在數據庫中。您無法直接在PDF內容上使用SQL全文,因爲PDF的文本內容有時會編碼爲二進制數據。

如果您要使用數據庫方法,那麼對於您的要求,您必須爲每個您想要引用的不同PDF頁面創建一個表格。

+0

SQL SERVER的Filetables呢? https://msdn.microsoft.com/pt-br/library/ff929144(v=sql.120).aspx – xandeq

+0

Filetables只允許sql server查看存儲在文件夾中的常規文件。它們仍然是二進制文件,無論它們是作爲varbinary還是通過文件列表轉儲到表中。使用filetables對「核心」要求沒有任何好處,即要對文件進行解碼以提取文本。 –