Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/34: Рейтинг темы: голосов - 34, средняя оценка - 4.88
6 / 3 / 2
Регистрация: 21.02.2010
Сообщений: 84
.NET 4.x

Поиск текста в документах MS Office

20.01.2012, 02:52. Показов 7308. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем есть библиотека документов,мне нужно организовать поиск текста по каждому документу и с возможностью подсчета совпадений...знаю что в Microsoft.Office.Interop.Word; реализован поиск..только он открывает каждый документ и долго думает...в общем помогите сделать это быстро и просто если можно))
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.01.2012, 02:52
Ответы с готовыми решениями:

Поиск текста в документах Word
Есть код ВБА. Он работает .. нигде не могу найти команды!!!! Может кто-то поможет ....Код для ексель ... открывает из выбранной папки файлы...

Поиск и замена текста в документах Word
Добрый день! Подскажите где ошибка. Компилятор ругается на строку .Execute(Replace:=Word.WdReplace.wdReplaceAll) и пишет следующее ...

Microsoft.Office.Interop.Word поиск текста
Здравствуйте. Есть документ Word. В нем есть текст: Категория возрастная: дети Пол: любой Фаза: острая Стадия: легкая...

8
179 / 175 / 14
Регистрация: 17.01.2011
Сообщений: 349
20.01.2012, 10:11
Судя по всему, поиск требуется реализовать по .doc и .docx файлам?
Для поиска по .doc файлам лучше воспользоваться таким: http://www.codeproject.com/KB/cs/getwordtext.aspx или подобным способом. Поиск по .docx реализуется проще - распаковываем его через стандартный GZipStream и ищем по содержимому "document.xml".
1
6 / 3 / 2
Регистрация: 21.02.2010
Сообщений: 84
20.01.2012, 17:28  [ТС]
Спасибо...с первым моментом разобрался,со вторым не понятно,знаю GZipStream,но что значит ищем по содержимому "document.xml"
0
179 / 175 / 14
Регистрация: 17.01.2011
Сообщений: 349
20.01.2012, 17:40
Цитата Сообщение от scrat Посмотреть сообщение
что значит ищем по содержимому "document.xml"
Файлы .docx - обычные архивы с кучей xml внутри. Нужно распаковать файл любым удобным способом (вариант с GZipStream - не самый удобный, надо сказать) и прочитать содержимое "document.xml", где лежит текст из файла.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
20.01.2012, 18:14
Цитата Сообщение от Slap Посмотреть сообщение
Файлы .docx - обычные архивы с кучей xml внутри. Нужно распаковать файл любым удобным способом (вариант с GZipStream - не самый удобный, надо сказать) и прочитать содержимое "document.xml", где лежит текст из файла.
это правда xml, но просто для поиска текста его использовать сложно, потому что там может оказаться сложное разбиение.
наприме был такой файлик

а получилось такой xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<w:document xmlns:ve="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:o="urn:schemas-microsoft-com:office:office"
            xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"
            xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math"
            xmlns:v="urn:schemas-microsoft-com:vml"
            xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"
            xmlns:w10="urn:schemas-microsoft-com:office:word"
            xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"
            xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml">
    <w:body>
        <w:p w:rsidR="00556AB4" w:rsidRDefault="0013716E">
            <w:r>
                <w:t>обы</w:t>
            </w:r>
            <w:r w:rsidRPr="0013716E">
                <w:rPr>
                    <w:rFonts w:ascii="Times New Roman" w:hAnsi="Times New Roman" w:cs="Times New Roman"/>
                    <w:sz w:val="44"/>
                    <w:szCs w:val="44"/>
                </w:rPr>
                <w:t>чный те</w:t>
            </w:r>
            <w:r>
                <w:t>кст</w:t>
            </w:r>
        </w:p>
        <w:sectPr w:rsidR="00556AB4" w:rsidSect="00556AB4">
            <w:pgSz w:w="11906" w:h="16838"/>
            <w:pgMar w:top="1134" w:right="850" w:bottom="1134" w:left="1701" w:header="708" w:footer="708" w:gutter="0"/><w:cols w:space="708"/>
            <w:docGrid w:linePitch="360"/>
        </w:sectPr>
    </w:body>
</w:document>
и выделить тут текст нетривиальная задача
Миниатюры
Поиск текста в документах MS Office  
0
40 / 40 / 3
Регистрация: 08.01.2012
Сообщений: 96
20.01.2012, 18:17
А разве в Open XML SDK нет поддержки таких функций?
1
179 / 175 / 14
Регистрация: 17.01.2011
Сообщений: 349
20.01.2012, 18:28
turbanoff, это валидный XML, достаточно удалить все теги, чтобы получить исходный текст.
0
 Аватар для sau
2774 / 2074 / 386
Регистрация: 22.07.2011
Сообщений: 7,822
21.01.2012, 13:44
http://msdn.microsoft.com/en-u... 78255.aspx
http://msdn.microsoft.com/en-u... .text.aspx
-в общем смысл таков, получаешь Body документа, там тянешь нужный параграф, пробегаешься по Run обьектам, и для каждого тянешь свойство text.
В твоем случае один параграф и три Run обьекта.

З.Ы А вообще можно забить на OpenXML и делать через обычный XDocument + Regex.
1
6 / 3 / 2
Регистрация: 21.02.2010
Сообщений: 84
21.01.2012, 21:49  [ТС]
Спасибо всем))...я тут обнаружил что у меня и PDF есть,его то как сканировать не подскажите,иначе я умру
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.01.2012, 21:49
Помогаю со студенческими работами здесь

Замена текста в doc документах
Для изменения документов Word использую Bytescout.Document.dll библиотеку. Так вот когда использую метод ReplaceText текст не заменяется в...

Программа для поиска текста в документах
Посоветуйте ту, которая, как это ни странно звучит - ИСКАТЬ будет! Потерял файл, скачал парочку хлама, одна не установилась, другая...

Программное форматирование текста в документах Word
Есть n-oe количество файлов в *.txt расширение. Сделал копирование нужных файлов из сети на локальный диск С. Отобразил в листбокс. Написал...

Поиск в документах по реквизиту
Здравствуйте. Такая проблема - нужно реквизит из одного документа приравнять другому, причём нужно найти главный реквизит, по которому...

Поиск в документах Word
Пример следующий: в документе есть блоки текста и имеются заголовки данных блоков. Задача такая что необходимо найти все заголовки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru