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

È stato utile?

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();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top