2012-06-28 18 views
5

próbuję to kodCzy istnieje sposób konwertowania dokumentu Microsoft Word do formatu notatnika .txt?

string[] ext = att.Name.Split('.'); 
string file = ext[0].ToString(); 
object Target = file + ".txt"; 
object nullobject = System.Reflection.Missing.Value; 

Application.Documents.Open(ref FileName, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref value, ref value, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj); 
object format = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatUnicodeText; 

Application.ActiveDocument.SaveAs(ref Target, ref format, 
         ref Unknown, ref Unknown, ref Unknown, 
         ref Unknown, ref Unknown, ref Unknown, 
         ref Unknown, ref Unknown, ref Unknown, 
         ref Unknown, ref Unknown, ref Unknown, 
         ref Unknown, ref Unknown); 
Application.Visible = false; 
Microsoft.Office.Interop.Word.Document oDoc1 = Application.ActiveDocument; 
string strNewDocText1 = oDoc1.Content.Text; 

Ale w strNewDocText1 uzyskać wyjście w tym pocisków i dodatkowym słowem mrówczanu

Chcę prostym formacie zwykłego tekstu mojego dokumentu Word do documnt tekstowym.

+0

Nie można bezpiecznie używać interfejsów Office API z programu serwisowego, takiego jak ASP.NET. Zostały zaprojektowane wyłącznie do użytku stacjonarnego. –

+0

Czy mogę znać przyczynę tego.? –

+0

Zobacz [Rozważania dotyczące automatyzacji biur po stronie serwera] (http://support.microsoft.com/kb/257757) –

Odpowiedz

2

wierzę wziąłeś ten przykład stąd: http://www.codeproject.com/Articles/5273/How-to-convert-DOC-into-other-formats-using-C

Więc w zasadzie masz RTF, który należy przekształcić do postaci zwykłego tekstu. Oto przykład: Najprostszym sposobem jest dodanie odniesienia do pliku System.Windows.Forms.dll.

System.Windows.Forms.RichTextBox rtBox = new System.Windows.Forms.RichTextBox(); 

string richText = text// The rich text (with bullets and so on.) 
rtBox.Rtf = richText ; 
string plainText = rtBox.Text; 

System.IO.File.WriteAllText(@"output.txt", plainText); 
+1

Ale moja aplikacja nie jest aplikacją komputerową. –

+1

Nie oznacza to, że nie możesz dodać odwołania do tego zestawu. To najszybsze i najprostsze rozwiązanie. – Nas

+0

On nie ma niedostępne RichTextBox ... w tej chwili –

Powiązane problemy