2010-09-12 11 views
5

के माध्यम से HTML के रूप में एकाधिक वर्ड दस्तावेज़ सहेजना मेरे पास बड़ी संख्या में वर्ड दस्तावेज़ हैं जिन्हें मुझे पार्स करने की आवश्यकता है। चूंकि वे सभी एक ही टेम्पलेट से बनाए गए थे, मुझे लगता है कि सबसे अच्छा तरीका उन्हें HTML फ़ाइलों के रूप में सहेजना और HTML को स्वयं पार्स करना होगा।Office API

हालांकि एचटीएमएल के रूप में एक वर्ड दस्तावेज़ को सहेजना काफी आसान है, मुझे वर्ड के अंदर से थोक प्रक्रिया करने का कोई तरीका नहीं मिला है। इस प्रकार, मैं इसे पूरा करने के लिए माइक्रोसॉफ़्ट ऑफिस/वर्ड एपीआई का लाभ उठाने का एक तरीका खोजने का प्रयास कर रहा हूं।

मैं कई वर्ड दस्तावेज़ों को HTML के रूप में सहेजने के लिए वर्ड एपीआई का उपयोग कैसे कर सकता हूं?

अग्रिम धन्यवाद।

अद्यतन: कुछ और बाते ...

दस्तावेजों में से कुछ, विस्तार .doc हैं, जबकि अन्य .docx हैं। मुझे आशा है कि यह कोई समस्या नहीं है, लेकिन यदि ऐसा है, तो मुझे उम्मीद है कि उन्हें एपीआई के साथ या DocX के साथ .docx पर सभी को परिवर्तित करना होगा।

docx की बात हो रही है, मैं saw on the author's blog है कि यह निम्न कोड के साथ HTML के रूप में एक .docx फ़ाइल को बचाने के लिए संभव है:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Word = Microsoft.Office.Interop.Word; 
using Microsoft.Office.Interop.Word; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      // Convert Input.docx into Output.doc 
      Convert(@"C:\users\cathal\Desktop\Input.docx", @"c:\users\cathal\Desktop\Output.doc", WdSaveFormat.wdFormatDocument); 

      /* 
      * Convert Input.docx into Output.pdf 
      * Please note: You must have the Microsoft Office 2007 Add-in: Microsoft Save as PDF or XPS installed 
      * http://www.microsoft.com/downloads/details.aspx?FamilyId=4D951911-3E7E-4AE6-B059-A2E79ED87041&displaylang=en 
      */ 
      Convert(@"c:\users\cathal\Desktop\Input.docx", @"c:\users\cathal\Desktop\Output.pdf", WdSaveFormat.wdFormatPDF); 

      // Convert Input.docx into Output.html 
      Convert(@"c:\users\cathal\Desktop\Input.docx", @"c:\users\cathal\Desktop\Output.html", WdSaveFormat.wdFormatHTML); 
     } 

     // Convert a Word 2008 .docx to Word 2003 .doc 
     public static void Convert(string input, string output, WdSaveFormat format) 
     { 
      // Create an instance of Word.exe 
      Word._Application oWord = new Word.Application(); 

      // Make this instance of word invisible (Can still see it in the taskmgr). 
      oWord.Visible = false; 

      // Interop requires objects. 
      object oMissing = System.Reflection.Missing.Value; 
      object isVisible = true; 
      object readOnly = false; 
      object oInput = input; 
      object oOutput = output; 
      object oFormat = format; 

      // Load a document into our instance of word.exe 
      Word._Document oDoc = oWord.Documents.Open(ref oInput, ref oMissing, ref readOnly, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref isVisible, ref oMissing, ref oMissing, ref oMissing, ref oMissing); 

      // Make this document the active document. 
      oDoc.Activate(); 

      // Save this document in Word 2003 format. 
      oDoc.SaveAs(ref oOutput, ref oFormat, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing); 

      // Always close Word.exe. 
      oWord.Quit(ref oMissing, ref oMissing, ref oMissing); 
     } 
    } 
} 

इस यह करने के लिए सबसे अच्छा तरीका है?

उत्तर

4

आपके द्वारा ऊपर पोस्ट किया गया कोड आपके लिए नौकरी करना चाहिए। जहां तक ​​मुझे दस्तावेज़ पता है। सेवएएस एपीआई किसी भी दस्तावेज़ (डॉक्क्स, डॉक्टर, आरटीएफ) को परिवर्तित कर सकता है जो इसे एचटीएमएल (या किसी अन्य प्रारूप) में

प्रत्येक फ़ाइल के लिए एक शब्द अनुप्रयोग उदाहरण बनाने के बजाय भी खोल सकता है एपीआई को कन्वर्ट करने के लिए नामों की स्ट्रिंग [] पास करें और

+0

सहमत हैं, यह करने का तरीका है और केवल एक ही उदाहरण बनाने के बारे में विनय का बिंदु स्पॉट पर है। –