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

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

 

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

f:id:uha_noki:20211201121356p:plain

使用するコンポーネント:

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*1;

 

読み取り効果は以下の通りです:

f:id:uha_noki:20211201121443p:plain

文末脚注を読み取る(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*2;

 

読み取り効果は以下の通りです:

f:id:uha_noki:20211201121527p:plain

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

*1:obj as Paragraph).Text);

        }

    }

}

//txtファイルに書き込む

File.WriteAllText("脚注.txt", sb.ToString(

*2:obj as Paragraph).Text);

        }

    }

}

//txtファイルに書き込む

File.WriteAllText("文末脚注.txt", sb.ToString(