フッターコンテンツにスキップ
IRONWORDの使用方法

C#を使用してワードファイルを読む方法

今日の時代において、Microsoft Word文書はオフィス作業やプロフェッショナルと個人的なコミュニケーションと同義です。 したがって、アプリケーションでユーザーに表示するためにタスクを自動化したい開発者にとって、Word文書をプログラムで操作することは重要です。 利用可能なライブラリは多数ありますが、すべてが他のものほど堅牢であるわけではありません。 しかし、他と一線を画しているライブラリが一つあります。それはIronWordです。 IronWordは、使いやすく理解しやすい堅牢なC# Word DOCXライブラリであり、Wordドキュメントの操作を簡素化します。

この記事では、短い例を用いてIronWordをすばやく利用してWord文書を読む方法を探ります。

WordファイルをC#で読む方法

  1. Visual Studioでコンソールアプリケーションを作成します

  2. IronWord C# DOCXライブラリをインストールします

  3. WordDocumentクラスを使用して新しいWord文書を作成します

  4. Word文書にテキストを追加します

  5. Paragraphクラスを使用して各段落をループします

  6. 内容を表示します

IronWord: C# DOCXライブラリ

IronWord: C# DOCXライブラリ

IronWordは、Word文書をアプリケーションに統合する際の手間を省く、簡単で使いやすいAPIを備えた柔軟でスケーラブルなライブラリです。 シンプルなテキストのWord文書をアプリケーションに追加して統合する場合でも、複雑なテーブルやレポートを作成してユーザーに表示する場合でも、IronWordはすべてをカバーしています。

ここにその注目すべき機能を挙げます:

  1. ドキュメント操作: IronWordは開発者がWord文書を簡単に操作できるようにします。 ユーザーがテキストの段落やテーブルや画像のようなより複雑な構造を挿入したい場合でも、IronWordはすべてを実現できます。

  2. クロスプラットフォームのサポートと互換性: IronWordは柔軟に設計されており、複数のプラットフォームで開発者をサポートします。 それは様々な.NET Core (8, 7, 6, 5, and 3.1+)、.NET Standard (2.0+)、.NET Framework (4.6.2+)、さらにはAzureもサポートしています。 さらに、開発者はWindows、Linux、macOS、Androidを含む多くのプラットフォームやシステムでIronWordを利用できます。 それは最も一般的なプラットフォームをカバーし、開発者がクロスプラットフォームアプリケーションを迅速に構築することを可能にします。

  3. Microsoft Officeからの独立性: .NETアプリケーションにWord文書を統合する際の一般的な問題は、Interopのような人気のあるライブラリがMicrosoft Officeのライセンスを必要とすることです。しかし、IronWordはその制約によって問題を解消します。 開発者はMicrosoft Wordのライセンスとインストールに制約されずに、Word文書の力を十分に活用できます。

  4. フォーマットオプション: IronWordはフォーマットとスタイリングの広範なサポートを提供し、開発者が文書を独自のものにすることを可能にします。 Developers can apply fonts to their text, colors, alignments, and other complex formatting, such as table styles.

  5. 使いやすさと広範なサポート: 分かりやすいAPIと簡単なメソッドコールに加えて、IronWordは拡張APIリファレンスとコード例も提供し、開発者がIronWordを最適に利用するための方法を決定するのを手助けします。

Visual Studioで新しいコンソールプロジェクトを作成する

Visual Studioで空のコンソールプロジェクトを作成することから始めましょう。

新しいプロジェクトを作成する際にコンソールアプリをクリックします

次にプロジェクトの名前と保存先を指定します。

プロジェクトの名前と保存場所のパスを指定します。

次に、使用する.NETフレームワークを選択します。 この例では.NET 8.0を使用します。

希望する.NETフレームワークを選択し、「作成」をクリックします。

新しいコンソールプロジェクトの作成と設定が完了した後、C#のWordライブラリIronWordをインストールします。

IronWordのインストール

IronWordをインストールする方法は2つあります。

1. NuGetパッケージマネージャを使用したインストール

NuGetパッケージマネージャを介してインストールするには、ツールをクリックし、次にソリューションのNuGetパッケージの管理を選択します。 次に、検索バーでIronWordを検索し、**IronWord**をインストールします。

NuGetパッケージマネージャを使用してIronWordを検索し、プロジェクトを選択し、インストールボタンをクリックすることで、ソリューションにIronWordをインストールします。

2. NuGetパッケージマネージャコンソールを使用したインストール

代替方法として、NuGetパッケージマネージャコンソールを使用してインストールすることもできます。 それを行うには、次のコマンドをコンソールで実行します:

Install-Package IronWord

ライセンスキー

IronWordはライセンスキーなしでは動作しないことに注意してください; ここから無料トライアルの一部として入手できます。

トライアルキーを取得した後、この変数をプロジェクトに設定してください。

// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
// Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
' Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"
$vbLabelText   $csharpLabel

Word文書をC#で読む

必要なものをインストールした後、IronWordを使用してMicrosoft Word文書を読むシンプルさを次のコードでデモンストレーションします。

まず、必要な名前空間をインポートします。 IronWordを使用して新しい文書を作成し、サンプルテキストを追加します。 次に、Word文書内のテキストを印刷するためにWordDocumentオブジェクトを使用して段落とテキストにアクセスします。

using IronWord;
using IronWord.Models;

#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Create text run with sample text
Text textRunExample = new Text("Sample text");

// Create a paragraph and add the text run to it
Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraphExample);

// Export the document as a DOCX file
doc.SaveAs("document.docx");

// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display the content to the console
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;

#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Create text run with sample text
Text textRunExample = new Text("Sample text");

// Create a paragraph and add the text run to it
Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraphExample);

// Export the document as a DOCX file
doc.SaveAs("document.docx");

// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display the content to the console
        Console.WriteLine(content);
    }
}
Imports IronWord
Imports IronWord.Models

#Region "Licensing"
' Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE"
'#End Region

' Create text run with sample text
Dim textRunExample As New Text("Sample text")

' Create a paragraph and add the text run to it
Dim paragraphExample As New Paragraph()
paragraphExample.AddChild(textRunExample)

' Create a new Word document with the paragraph
Dim doc As New WordDocument(paragraphExample)

' Export the document as a DOCX file
doc.SaveAs("document.docx")

' Access paragraphs and text runs within the document
For Each paragraph As Paragraph In doc.Paragraphs
	For Each textRun As Text In paragraph.Texts
		' Access text content
		Dim content As String = textRun.Text
		' Display the content to the console
		Console.WriteLine(content)
	Next textRun
Next paragraph
$vbLabelText   $csharpLabel

上記のコードからWordファイルを読む方法とパラメータを探ってみましょう。

  1. まず、Textオブジェクトを作成し、文字列"サンプルテキスト"を代入します。

  2. 次に、Paragraphオブジェクトをインスタンス化して、"textRunExample"を追加します。

  3. WordDocumentオブジェクトもインスタンス化し、WordDocument doc,という名前を付け、paragraphExampleを渡して、その段落を含む新しいWord文書を作成します。

  4. コードは後で使用するために"document.docx"というファイル名でWord文書を保存します。

  5. 作成したWord文書の段落にアクセスするには、WordDocumentオブジェクトの"Paragraphs"プロパティにアクセスします。 "Paragraphs"プロパティはリストであるため、それを反復するためにforeachループを呼び出します。

  6. 段落内のテキストを取得するには、Paragraphsの"Texts"プロパティにアクセスします。 これもTextのリストを返します。

  7. 最後に、Textを"content"という名前の文字列変数に割り当て、それをコンソールに印刷します。

コンソール出力

Word文書docから読み取ったテキストを表示するコンソール出力。

既存のWord文書をC#で読む

前の例では、新しいWord文書をプログラムで作成し、その内容を読み取りました。 少しのコード変更で既存のWord文書を読むための同様のステップを辿ることができます。

入力文書

入力例: 長文のWord文書

using IronWord;
using IronWord.Models;

#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Load an existing Word document
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display the content to the console
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;

#region Licensing
// Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Load an existing Word document
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs within the document
foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display the content to the console
        Console.WriteLine(content);
    }
}
Imports IronWord
Imports IronWord.Models

#Region "Licensing"
' Set the IronWord license key before using the IronWord functionalities
IronWord.License.LicenseKey = "YOUR-KEY-HERE"
'#End Region

' Load an existing Word document
Dim doc As New WordDocument("existing_document.docx")

' Access paragraphs and text runs within the document
For Each paragraph As Paragraph In doc.Paragraphs
	For Each textRun As Text In paragraph.Texts
		' Access text content
		Dim content As String = textRun.Text
		' Display the content to the console
		Console.WriteLine(content)
	Next textRun
Next paragraph
$vbLabelText   $csharpLabel

2つの例の主な違いは、WordDocumentオブジェクトに渡されるパラメータです。 新しい文書を作成する代わりに、既存のWordファイルをロードします。 あとは他の例と同じです。

コンソール出力

コンソール出力

結論

IronWordライセンス情報

例を通じて、IronWordライブラリを使用してC#でプログラムでWord文書を操作し読み取る方法がどれほどシンプルであるかを実演しました。 IronWordライブラリの柔軟性とスケーラビリティにより、開発者はIronWordを使用してテンプレートを埋める、レポートを生成する、ドキュメントをバッチ処理するなど、実用的で現実的な例で活用できます。 Wordがアプリケーションと統合される方法を理解することは、開発者にとって問題解決のための多くのソリューションを提供するため、価値があります。

さらに、IronWordの広範な機能を購入する前に一定期間試用することも可能なため、無料トライアルライセンスも提供しています。 Along with ease of use, IronWord also comes with thorough documentation and 24/5 support for developers, alleviating the constant frustration developers might face in the face of production. We also offer various tutorials and a range of code examples for reference to help you get started with IronWord.

試用ライセンスを使用してIronWordのさまざまな側面をテストした後、LiteからProfessionalまで、利用可能な660ドルからのLite開発者ライセンスを購入できます。 ライセンスページを参照して、詳細情報を取得してください。

よくある質問

C# で Word ドキュメントを読むにはどうすればよいですか?

Word ドキュメントを C# で読むには、IronWord を使用します。WordDocument クラスを使用してドキュメントを読み込み、段落やテキストを反復してアクセスし、テキストコンテンツを表示します。

Word ドキュメントを読むにあたって信頼できる C# ライブラリは何ですか?

IronWord は、Word ドキュメントを読み取ったり操作したりするために設計された信頼できる C# ライブラリです。Word ドキュメント機能のアプリケーションへの統合を簡素化するシンプルな API を提供します。

C# で Word ドキュメントを読むために Microsoft Office のインストールが必要ですか?

いいえ、IronWord は Microsoft Office のインストールを必要としません。ライセンス版の Office を必要とせずに Word ドキュメントを操作できるように独立して動作します。

Visual Studio で Word ドキュメントを読むC#ライブラリをインストールするにはどうすればよいですか?

Visual Studio の NuGet パッケージ マネージャーから「IronWord」と検索して「インストール」を選択するか、NuGet パッケージ マネージャー コンソールで Install-Package IronWord コマンドを使用して IronWord をインストールできます。

IronWord は Word ドキュメント操作用にどのプラットフォームをサポートしていますか?

IronWord はさまざまなプラットフォームをサポートしており、.NET Core (8, 7, 6, 5, および 3.1+)、.NET Standard (2.0+)、.NET Framework (4.6.2+)、Azure に対応しており、Windows、Linux、macOS、Android互換性があります。

C# ライブラリを使用して既存の Word ドキュメントを操作できますか?

はい、IronWord を使用すると、新しい Word ドキュメントと既存の Word ドキュメントの両方をプログラムを通じて読み取ったり修正したりでき、ドキュメントのコンテンツと構造を完全に制御できます。

IronWord に無料トライアルはありますか?

はい、IronWord には無料のトライアル ライセンスがあります。開発者はこのトライアルを利用して機能を探索し、プロジェクトに適しているかどうかを購入前に評価できます。

C# を使用して Word ドキュメントを他の形式に変換するにはどうすればよいですか?

IronWordを使ってWordドキュメントをさまざまな形式に変換でき、API を活用して PDF や HTML などの形式にドキュメントをエクスポートしますが、変換の詳細は異なる場合があります。

C# アプリケーションで IronWord を使用する一般的なユースケースは何ですか?

IronWord は、テンプレートの埋め込み、レポートの生成、ドキュメントの一括処理、.NET アプリケーションへの Word ドキュメント機能の統合などのタスクに一般的に使用されます。

IronWord のユーザーサポートオプションにはどのようなものがありますか?

IronWord は 24/5 のサポートを提供しており、開発者がライブラリを効果的に活用できるように、詳細なドキュメント、チュートリアル、およびコードサンプルを提示しています。

Jordi Bardia
ソフトウェアエンジニア
Jordiは、最も得意な言語がPython、C#、C++であり、Iron Softwareでそのスキルを発揮していない時は、ゲームプログラミングをしています。製品テスト、製品開発、研究の責任を分担し、Jordiは継続的な製品改善において多大な価値を追加しています。この多様な経験は彼を挑戦させ続け、興味を持たせており、Iron Softwareで働くことの好きな側面の一つだと言います。Jordiはフロリダ州マイアミで育ち、フロリダ大学でコンピュータサイエンスと統計学を学びました。