Leyendo archivos doc y docx usando C # sin tener MS Office instalado en el servidor

Estoy trabajando en un proyecto (asp.net, c #, vb 2010, .net 4) y necesito leer los archivos DOC y DOCX, que ya he cargado (he terminado de cargar la parte). La parte difícil es que no tengo MS Office instalado en el servidor y que no puedo usarlo.

¿Hay alguna biblioteca pública que pueda incluir en mi proyecto sin tener que instalar nada? Ambos documentos son muy simples:

NUMBER TAB STRING NUMBER TAB STRING NUMBER TAB STRING ... 

Necesito extraer el número y la cadena para cada fila (párrafo).

¿Alguien puede ayudar con esto? Debo repetir una vez más que estoy limitado de una manera que no puedo instalar nada en un servidor.

Ahora podemos usar una biblioteca de código abierto, NPOI (puerto .NET de Apache POI) que también admite docx, xls y xlsx. DocX es también otra biblioteca de código abierto para crear documentos de Word.

Para DOCX sugeriría Open XML API , aunque Microsoft desarrolló Open XML para crear archivos de Office a través de los archivos XML que se comunican con esta API, la última versión 2.5 se lanzó en 2013, hace 5 años.

puede utilizar Code7248.word_reader.dll

A continuación se muestra el código de ejemplo sobre cómo usar Code7248.word_reader.dll

Agregue una referencia a esta DLL en su proyecto y copie el código a continuación.

 using System; using System.Collections.Generic; using System.Text; //add extra namespaces using Code7248.word_reader; namespace testWordRead { class Program { private void readFileContent(string path) { TextExtractor extractor = new TextExtractor(path); string text = extractor.ExtractText(); Console.WriteLine(text); } static void Main(string[] args) { Program cs = new Program(); string path = "D:\Test\testdoc1.docx"; cs.readFileContent(path); Console.ReadLine(); } } } 

Actualización: NPOI soporta docx ahora. Por favor, intente la última versión (NPOI 2.0 beta)