从.doc或.docx读取数据并插入db

时间:2010-08-18 07:26:41

标签: c# .doc

供应商正在提供需要插入数据库的内容。内容基本上是选项和解释的问题。一个例子如下。

=========================================

1)英国的首都是什么?

1]伦敦2]巴黎3]柏林4]爱丁堡

解决方案:Blah Blah Blah

答案:选项1

==========================================

上述格式中有数百个问题,供应商以.doc或.docx格式提供。所有这些问题都需要输入到数据库中,我必须自动化该过程,以便从单词doc中读取数据并输入db。

最好的方法是什么?我更喜欢使用C#,我已经拥有了自定义对象并将其插入相关表的代码。现在我想要的只是阅读文字doc并填充这些对象。任何指针都会有所帮助。

感谢您的时间!

干杯

1 个答案:

答案 0 :(得分:1)

您需要引用和使用COM对象“Microsoft Word x.x对象库”,其中x.x是某个版本,具体取决于您使用的Office版本。

然后,您需要使用Word.ApplicationClass打开Word文档并访问其数据。 通常建议您将整个Word文档复制到剪贴板,然后从那里访问它。

类似的东西:

Word.ApplicationClass wordApp = new Word.ApplicationClass();
object file = filepath;
object nullobj = System.Reflection.Missing.Value;
Word.Document doc = wordApp.Documents.Open(ref file, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj);
doc.ActiveWindow.Selection.WholeStory();
doc.ActiveWindow.Selection.Copy();
IDataObject data = Clipboard.GetDataObject();
txtFileContent.Text = data.GetData(DataFormats.Text).ToString();
doc.Close();