2009-08-17 24 views
0

我有一個docx格式的文檔文檔,數據格式重複。轉換一個docx並上傳到sql表格

我想從重複集中獲取每個數據並上傳到SQL表中的一行。數據

樣品在這裏:

Question No : 1 
How is LINQ to SQL different from Entities? 

A. Answer 1 
B. Answer 1 
C. Answer 1 
D. Answer 1 

Answer : D 
Explanations : 
Some explanation. 

Question No : 2 
How is NVARCHAR different from VARCHAR 

A. Answer 1 
B. Answer 1 
C. Answer 1 
D. Answer 1 

Answer : D 
Explanations : 
Some explanation. 

我能想到的幾種方法:
- 爲DOCX使用Office API
閱讀文檔 - 將文檔保存爲Word中XML和解析XML [在轉換後的XML文檔似乎並不具有這樣的結構/架構]
- 從Word將文檔保存爲HTML和解析HTML [DOM結構不能很好地形成]

在上面,你會建議哪個?爲什麼?有什麼工具可以幫助轉換文檔並上傳到SQL表或訪問數據庫嗎?

謝謝!

回答

2

DOCX只是XML文件的ZIP目錄樹。使用WinZip或7-Zip將其解壓縮到一組子目錄中。將這些XML文件上傳到SQL Server,添加它們的文件名和文件夾路徑。 使用SQL Server XML方法(.node等)將它們分解爲所需的關係表單。

請注意,它們具有XML模式和結構。

0

如果你打算不是經常處理這些文件,那麼我會說它保存到不同的格式(更容易通過SQL處理) - 甚至可能是純文本格式。 如果這個過程(導入該文件到數據庫)將定期執行 - 請進行本地DOCX處理,而不將其轉換爲中間格式。 快速谷歌搜索顯示,有可用的組件可以讀取docx格式到數據庫中(例如http://www.brothersoft.com/code-library-for-.net-(sql-server-msde)-22050.html