LoginSignup
0
0

More than 1 year has passed since last update.

C#を使用してWordの脚注と文末脚注の内容を読み取る方法

Last updated at Posted at 2021-12-01

##C#を使用してWordの脚注と文末脚注の内容を読み取る方法

##背景

脚注と文末脚注は、Word文書の本文を補足説明のために追加した内容です。脚注は通常、ページの下部にあり、ドキュメントのコンテンツに注釈を付けるために使用できます。文末脚注は通常、ドキュメントの最後にあり、引用されたドキュメントを説明するために使用できます。この記事では、C#を使用してWord文書の脚注と文末脚注の内容を読み取る方法を紹介します。

Word文書のスクリーンショット:
01.png

##使用するコンポーネント:
Free Spire.Doc
次のコードを使用する前に、C#アプリケーションを作成し、Spire.Doc.dllをプロジェクトに参照する必要があります。

##コード一覧

###脚注を読み取る(Footnote)

//documentのインスタンスを作成する
Document doc = new Document();
//Word文書をロードする
doc.LoadFromFile("sample.docx");
//Word文書内全ての脚注を取得する
List<Footnote> footNotes = doc.Footnotes;
//StringBuilderのインスタンスを作成する
StringBuilder sb = new StringBuilder();
//脚注の内容をStringBuilderインスタンスに追加する
foreach (Footnote footNote in footNotes)
{
    foreach (DocumentObject obj in footNote.TextBody.ChildObjects)
    {
        if (obj is Paragraph)
        {
            sb.AppendLine((obj as Paragraph).Text);
        }
    }
}
//txtファイルに書き込む
File.WriteAllText("脚注.txt", sb.ToString());

読み取りをした結果は以下の通りです:
02.png

###文末脚注を読み取る(EndNotes)

//documentのインスタンスを作成する
Document doc = new Document();
//Word文書をロードする
doc.LoadFromFile("sample.docx");
//Word文書内全ての文末脚注を取得する
List<Footnote> endNotes = doc.Endnotes;
//StringBuilderのインスタンスを作成する
StringBuilder sb = new StringBuilder();
//文末脚注の内容をStringBuilderインスタンスに追加する
foreach (Footnote endNote in endNotes)
{
    foreach (DocumentObject obj in endNote.TextBody.ChildObjects)
    {
        if (obj is Paragraph)
        {
            sb.AppendLine((obj as Paragraph).Text);
        }
    }
}
//txtファイルに書き込む
File.WriteAllText("文末脚注.txt", sb.ToString());

読み取りをした結果は以下の通りです:
03.png

以上は脚注について簡単な操作でした、最後まで読んでいただきありがとうございます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0