OpenXML body.Elements() пуст при извлечении абзацев из DOCX в .NET 8C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 OpenXML body.Elements() пуст при извлечении абзацев из DOCX в .NET 8

Сообщение Anonymous »

Я работаю над проектом .NET 8, где мне нужно прочитать содержимое файла DOCX с точным форматированием (пробелы, разрыв строки и разрыв абзаца), используя класс WordprocessingDocument из DocumentFormat.OpenXml. Пространство имен упаковки.
Я подтвердил, что файл DOCX содержит текстовое содержимое, но когда я пытаюсь извлечь абзацы, тело.Elements
() коллекция кажется пустой, в результате чего цикл не выполняется. Однако я могу извлечь простое текстовое содержимое, вызвав body.InnerText.
Вот фрагмент моего текущего кода:

Код: Выделить всё

private string ReadDocxContentWithExactFormatting(string filePath)
{
try
{
using (WordprocessingDocument wordDocument = WordprocessingDocument.Open(filePath, false))
{
StringBuilder contentBuilder = new StringBuilder();
var body = wordDocument.MainDocumentPart.Document.Body;

// This loop is not running because
foreach (var paragraph in body.Elements
())
{
// Intended to process the paragraph text
}

return contentBuilder.ToString();
}
}
catch (Exception ex)
{
return $"Error reading file: {ex.Message}";
}
}

Коллекция body.Elements() кажется пустой, поэтому цикл не выполняется. Я подтвердил, что файл DOCX содержит текстовое содержимое, но, похоже, абзацы не распознаются. Я ожидаю, что абзацы будут доступны для обработки.
Как правильно извлечь абзацы с их точным форматированием?

Подробнее здесь: https://stackoverflow.com/questions/791 ... om-docx-in
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как использовать Python-Docx для извлечения абзацев между заголовком и таблицей
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Использование DocumentFormat.OpenXml в C# .NET для выделения всего DOCX курсивом
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Использование DocumentFormat.OpenXml в C# .NET для выделения всего DOCX курсивом
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Использование DocumentFormat.OpenXml в C# .NET для выделения всего DOCX курсивом
    Anonymous » » в форуме C#
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Присвойте значение тегу Paragraph или P через jQuery для данных, полученных из PHP.
    Anonymous » » в форуме Php
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»