##為.NET安裝一個開源fileformat.words,以編程方式學習如何在C#中讀取DOCX文件。此API提供了構建Word文件查看器的方法。 {.wp-block頭}

如何在C#中打開DOCX文件

概述

建立涉及文件創建和操縱的業務軟件並不容易。時間和人小時是關鍵因素,但是選擇相關的第三方圖書館在發展階段起著至關重要的作用。因此,讓我們瀏覽一個開源.NET庫,該庫提供了多種方法來操縱Word文件。此API不僅可以創建/編輯Word文件,還可以讀取業務文檔/DOCX文件。我們正在談論fileformat.words是通過編程處理Word文檔所需的完整功能包。但是,這篇博客文章將回答您的問題(即 如何在C#? 中打開DOCX文件)。此外,您將能夠在本文末尾構建Word文件讀取器。 我們將在本指南中介紹以下幾點:

Word文件查看器 - API安裝

請訪問此鏈接,以詳細介紹安裝過程。否則,無論您可以使用其Nuget package還是通過在Nuget Package Manager中運行以下命令來安裝它。

Install-Package FileFormat.Words

如何在C#中打開DOCX文件

安裝了此開源.NET API後,您可以立即開始編寫代碼。讓我們為您的業務軟件構建Word文件讀取器組件。有多種方法和屬性可以讀取DOCX/DOCS文件,但我們將使用一些突出的方法/屬性。 您可以按照以下步驟和代碼段:

using FileFormat.Words;
using FileFormat.Words.Table;
namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            // Initialize an instance of the Document class and load the Docx/Docs file. 
            using (Document doc1 = new Document("/Docs.docx"))
            {
                // Instantiate an object of the Body class.
                Body body1 = new Body(doc1);
                // Invoke the getDocumentTables method that returns the total number of tables in a document.
                Console.WriteLine("Total Number of Tables " + body1.getDocumentTables.Count());
                int i = 0;
                // The getDocumentTables property returns the table properties.
                foreach (Table props in body1.getDocumentTables)
                {
                    // The ExistingTableHeaders property returns the table headers.
                    foreach (string tableHeader in props.ExistingTableHeaders)
                    {
                        i++;
                        Console.WriteLine("Header"+i+": "+tableHeader);
                    }
                    // Call NumberOfRows property to access the table rows.
                    Console.WriteLine("Number of rows "+props.NumberOfRows);
                    // Use NumberOfColumns property to fetch number of columns.
                    Console.WriteLine("Number of columns " + props.NumberOfColumns);
                    // Access the number of cells using NumberOfCells property.
                    Console.WriteLine("Number of cells " + props.NumberOfCells);
                    Console.WriteLine("Cell width " + props.CellWidth);
                    // The TableBorder property is used to read the border style.
                    Console.WriteLine("Border style " + props.TableBorder);
                    // Use the TablePosition property to get the position of the table.
                    Console.WriteLine("Table position " + props.TablePosition);
                    Console.WriteLine(" ");
                }

                // Invoke the ExtractImagesFromDocument method to get all the images from a Word document.
                List<Stream> imageParts = Image.ExtractImagesFromDocument(doc1);
                int imageCount = imageParts.Count;
                Console.WriteLine($"Total number of images: {imageCount}");
                // Call the GetParagraphs method to retrieve all the document paragraphs.
                List<Paragraph> paras = body1.GetParagraphs();

                Console.WriteLine("The number of Paragraphs " + paras.Count());
                foreach (Paragraph p in paras)
                {
                    // The LinesSpacing property is used to know the spacing between the lines.
                    Console.WriteLine("Line spacing "+p.LinesSpacing);
                    // The Indent property is used to know the value of indentation.
                    Console.WriteLine("Indent value "+p.Indent);
                    // Get the text of the paragraph by calling the Text property.
                    Console.WriteLine(p.Text);
                }

            }

        }

    }
}

上面的代碼段讀取一個文字文件,其中包含一個段落,一個表和一個圖像。但是,您可以在下圖中看到輸出:

Word文件讀取器

結論

我們在這裡結束這篇博客文章。我們希望您對您的問題有答案(即 如何在C#? 中打開DOCX文件)。此外,我們已經完成了代碼段,該代碼段是通過編程方式讀取現有Word文檔的。現在,您可以輕鬆地構建一個像 Word File Viewer 一樣工作的模塊。此外,不要忘記訪問.NET的FileFormat.WordsDocumentation。 最後,fileformat.com繼續寫有關其他主題的博客文章。此外,您可以在我們的社交媒體平台上關注我們,包括FacebookLinkedInTwitter

貢獻

由於.NET的FileFormat.Words是一個開源項目,可在GitHub上找到。因此,社區的貢獻非常感謝。

問一個問題

您可以在我們的論壇上讓我們知道您的問題或查詢。

##常見問題 - 常見問題{.wp-block-neading} 如何打開一個沒有單詞的DOCX文件? 您可以使用此開源.NET庫FileFormat.Words打開DOCX/DOCS文件。此外,您可以使用此Library為您的業務應用程序構建Word文件讀取器模塊。

另請參見