Lettura di dati da doc o .docx e inserendo in db
Domanda
Il venditore fornisce contenuto che deve essere inserito nel db. Il contenuto è fondamentalmente domande con opzioni e spiegazioni. Un esempio è sotto.
=========================================
1) Qual è la capitale del Regno Unito?
1] Londra 2] Parigi 3] Berlino 4] Edimburgo
Soluzione: Blah Blah Blah
Risposta: Opzione 1
==========================================
Ci sono centinaia di domande nel formato di cui sopra e il venditore sta fornendo in un formato .doc o .docx. Tutte queste domande devono essere inseriti nel database e devo automatizzare il processo in modo che i dati vengono letti dal documento di parola ed è entrato in db.
Qual è il modo migliore per andare su di esso? Io preferisco usare C # e ho già il codice per che prende oggetti personalizzati e li inserisce nelle relative tabelle. Ora tutto quello che voglio è quello di leggere il documento di parola e popolare quegli oggetti. Tutti gli indicatori sarebbe utile.
Grazie per il tuo tempo!
Saluti
Soluzione
È necessario riferimento e utilizzare l'oggetto COM "Microsoft Word libreria di oggetti x.x" dove x.x è qualche versione a seconda della versione di Office che si sta utilizzando.
È quindi necessario utilizzare un Word.ApplicationClass per aprire il documento di Word e accedere ai suoi dati. E 'spesso suggerito di copiare l'intero documento di Word negli appunti e poi accedere da lì.
Qualcosa di simile:
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();