C#/VB.NET 實現Word和ODT文件相互轉換

iceblue發表於2022-05-10

ODT文件格式一種開放文件格式(OpenDocument Text)。通常,ODT格式的檔案可以使用LibreOffice Writer、MS Word或其他一些文件編輯器來開啟。我們在處理文件時,可通過格式轉換的方式,將ODT轉為其他格式,或者將其他格式轉為ODT,來獲取目標文件。本文,以C#及VB.NET程式碼展示ODT和Word文件之間相互轉換的方法。


 

【程式環境】

本次測試時,在程式中引入Free Spire.Doc for .NET。可通過以下方法引用Spire.Doc.dll檔案:

方法1:將 Free Spire.Doc for .NET 下載到本地,解壓,安裝。安裝完成後,找到安裝路徑下BIN資料夾中的Spire.Doc.dll。然後在Visual Studio中開啟“解決方案資源管理器”,滑鼠右鍵點選“引用”,“新增引用”,將本地路徑BIN資料夾下的dll檔案新增引用至程式。

方法2通過 NuGet 安裝。可通過以下2種方法安裝:

(1)可以在Visual Studio中開啟“解決方案資源管理器”,滑鼠右鍵點選“引用”,“管理NuGet包”,然後搜尋“Free Spire.Doc”,點選“安裝”。等待程式安裝完成。

(2)將以下內容複製到PM控制檯安裝。

Install-Package FreeSpire.Doc -Version 10.2.0


 

【格式轉換】

轉換時,只需要操作三行程式碼來實現:

  • 建立Document類的物件。
  • 呼叫Document.LoadFromFile(string fileName)方法載入源文件。
  • 通過Document.SaveToFile(string fileName, FileFormat fileFormat)方法儲存為目標檔案格式到指定路徑。

1. Word轉為ODT

C#

using Spire.Doc;

namespace WordtoODT
{
    class Program
    {
        static void Main(string[] args)
        {
            //建立Document類的物件
            Document document = new Document();

            //載入Word文件
            document.LoadFromFile("sample.docx");

            //儲存為ODT格式
            document.SaveToFile("ToODT.odt", FileFormat.Odt);
        }
    }
}

vb.net

Imports Spire.Doc

Namespace WordtoODT
    Class Program
        Private Shared Sub Main(args As String())
            '建立Document類的物件
            Dim document As New Document()

            '載入Word文件
            document.LoadFromFile("sample.docx")

            '儲存為ODT格式
            document.SaveToFile("ToODT.odt", FileFormat.Odt)
        End Sub
    End Class
End Namespace

2. ODT轉為Word

C#

using Spire.Doc;

namespace ODTtoWord
{
    class Program
    {
        static void Main(string[] args)
        {
            //建立Document類的物件
            Document document = new Document();

            //載入ODT文件
            document.LoadFromFile("test.odt");

            //儲存為Word格式
            document.SaveToFile("toWord.docx", FileFormat.Docx2013);
        }
    }
}

vb.net

Imports Spire.Doc

Namespace ODTtoWord
    Class Program
        Private Shared Sub Main(args As String())
            '建立Document類的物件
            Dim document As New Document()

            '載入ODT文件
            document.LoadFromFile("test.odt")

            '儲存為Word格式
            document.SaveToFile("toWord.docx", FileFormat.Docx2013)
        End Sub
    End Class
End Namespace

:測試程式碼中的檔案路徑為程式Debug路徑,檔案路徑可自定義為其他路徑。

 

—END—

 

相關文章