Программный подсчет количества символов / слов / абзацев с определенным стилем в документе DOCX - PullRequest
6 голосов
/ 29 апреля 2011

Мне нужно программно подсчитать символы и / или слова и / или абзацы, для которых был применен определенный известный стиль в документе DOCX.

Мне нужно знать 1) если это возможно, и 2) любые подсказки относительно того, где я могу начать решать эту проблему.

Я знаком с DOM-навигацией, XPath / XQuery и могу использовать .Net, PHP или Java или любой другой инструмент, если могу решить эту проблему.

1 Ответ

2 голосов
/ 29 апреля 2011
Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
        Microsoft.Office.Interop.Word.Document doc = new Microsoft.Office.Interop.Word.Document();

        try
        {
            object fileName = @"C:\TT\change.docx";
            doc = word.Documents.Open(ref fileName,
                ref missing, ref missing, ref missing, ref missing,
                ref missing, ref missing, ref missing, ref missing,
                ref missing, ref missing, ref missing, ref missing,
                ref missing, ref missing, ref missing);

            doc.Activate();

            int count = doc.Characters.Count ;
            int words = doc.Words.Count; ;
            int paragraphs = doc.Paragraphs.Count;

            doc.Save();

            doc.Close(ref missing, ref missing, ref missing);
            word.Application.Quit(ref missing, ref missing, ref missing);
        }
        catch (Exception ex)
        {
            doc.Close(ref missing, ref missing, ref missing);
            word.Application.Quit(ref missing, ref missing, ref missing);
        }  
...