Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
74 / 54 / 17
Регистрация: 10.07.2014
Сообщений: 329

Считать текст из doc (docx) файла используя LibreOffice

30.09.2014, 11:12. Показов 3604. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть тема с ответом
Считать текст из doc но там используется Word
А если его нет, он же платный?
Есть такие же возможности у LibreOffice?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.09.2014, 11:12
Ответы с готовыми решениями:

Считать текст из файлов с расширениями *.doc и *.docx
Здравствуйте! Мне нужно считать текст (не содержащий таблиц, изображений и формул) из файлов с расширениями *.doc и *.docx. Открываю файл,...

Используя PHP считать doc/docx файл и сгенерировать его в PDF
Я использую composer и подключаю 2 библиотеки : PHPWord Dompdf Возник вопрос, как реализовать наиболее оптимизирванно...

Создание/склеивание doc\docx файла из шаблона doc\docx с заменой ключевых слов
Подскажите, как можно такое реализовать? Я узнал, что в rtf нельзя делать разрыв страницы, а просто как с текстовым файлом с doc и docx...

4
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,895
Записей в блоге: 11
30.09.2014, 11:46
Libre не держу, у OpenOffice - точно есть:
C++
1
2
3
4
5
6
7
    Variant App = Variant::CreateObject("com.sun.star.ServiceManager");
    Variant Desktop = App.OleFunction("createInstance", WideString("com.sun.star.frame.Desktop"));
    int Bounds[2] = {0, -1};
    Variant Array = VarArrayCreate(Bounds, 1, varVariant);
    Variant ODocument = Desktop.OleFunction("LoadComponentFromURL",
        WideString("file://localhost/D:/test/01.doc"), WideString("_blank"), 0, Array); // Грузим файл
    String s = ODocument.OleFunction("GetText").OlePropertyGet("String"); // И получаем его содержимое в виде строки
1
74 / 54 / 17
Регистрация: 10.07.2014
Сообщений: 329
30.09.2014, 14:51  [ТС]
Спасибо за код для Опеноффиса, тоже вариант.
Но как сделать офис невидимый и выйти с него потом?
строки
C++
1
2
    App.OlePropertySet("Visible",false);
    App.OleFunction("Quit");
Не срабатывают... вызывая исключение.
Или где о них прочесть можно?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,895
Записей в блоге: 11
30.09.2014, 15:18
Лучший ответ Сообщение было отмечено krv как решение

Решение

Цитата Сообщение от krv Посмотреть сообщение
Но как сделать офис невидимый и выйти с него потом?
Легко:
C++
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    Variant App = Variant::CreateObject("com.sun.star.ServiceManager");
    Variant Desktop = App.OleFunction("createInstance", WideString("com.sun.star.frame.Desktop"));
    int Bounds[2] = {0, 0};
 
    Variant OpenParams = VarArrayCreate(Bounds, 1, varVariant);
    Variant MyStruct = App.OleFunction("Bridge_GetStruct",
        WideString("com.sun.star.beans.PropertyValue"));
    MyStruct.OlePropertySet("name", WideString("Hidden")); // Устанавливаем атрибут "Скрытый"
    MyStruct.OlePropertySet("value", true);
 
    OpenParams.PutElement(MyStruct, 0);
    // Открытие файла
    Variant ODocument = Desktop.OleFunction("LoadComponentFromURL",
        WideString("file://localhost/D:/test/01.doc"), WideString("_blank"), 0,
        OpenParams); // И открываем документ с этим атрибутом
 
    // Делаем все, что нужно
    String s = ODocument.OleFunction("GetText").OlePropertyGet("String");
 
    // Закрываем документ
    ODocument.OleFunction("close", true);
    ODocument = Unassigned();
 
    // И завершаем Десктоп
    Desktop.OleFunction("terminate");
    Desktop = Unassigned();
}
0
74 / 54 / 17
Регистрация: 10.07.2014
Сообщений: 329
30.09.2014, 15:25  [ТС]
Вот же ж понаписуют...или понапишут. методом тыка не разобраться )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.09.2014, 15:25
Помогаю со студенческими работами здесь

Не распознает текст в LibreOffice Writer после измены типа файла из txt на doc
Не распознает текст в LibreOffice Writer после измены типа файла из txt на doc. В самом файле русские символы выглядят вот так , а...

В Memo или RichEdit вставить текст из файла doc или docx
Люди помогите плиз, весь нэт обрыл. Нужно в Builder, в Memo или RichEdit вставить текст из файла doc или docx. Можно и без...

Получить текст из .doc (НЕ DOCX)
Необходимо достать текст из .doc файла и вывести на экран.Желательно что бы код работал в Qt. Спасибо за потраченное время. PS....

Как сохранить текст из RichTextBox в файл doc или docx?
Всем привет! Как сохранить текст из RichTextBox в файл doc или docx?

Считывание из doc/docx файла
Здравствуйте. Решил таки написать диплом и собственно возник затык в программной части. Пишу что то типа АСУ по обработке док файлов...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru