Cчитывание данных файла формата doc
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Cчитывание данных файла формата doc
Всем салют) В начале сентября начал обучение в данной среде. Появился вопрос как считать информацию из Microsoft Office Word, для дальнейшей обработки данных. Это мне нужно для создания программы тестовика, которая будет генерировать вопросы с ответами записанными в Microsoft Office Word. Заранее благодарю!
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
Я бы прописал RGT, но судя по вашей версии вам придется довольствоваться ActiveX или .NET, в т.ч. врапперами наподобие Novacode.
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
Да согласен с тем ,что у меня версия старая, просто у меня так скажем стоит четко поставленная цель свыше, сделать это именно в данной версии. Спасибо за совет! Не могли бы вы посоветовать материалы для использования ActiveX и прочего. Который день копаюсь, никак не могу найти. За ранее благодарю!!
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
А где Вы копаетесь? Гугл на запрос "labview and activex" или "labview and activex word" выдает столько ссылок, что "мама не горюй". В чем проблема-то? Гугл у всех одинаковыйAkimzhan писал(а):Который день копаюсь, никак не могу найти. За ранее благодарю!!
Мы делили апельсин - много наших полегло...
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
Примеры, идущие в комплекте с , например actxpp.llb и ExcelExamples.llb в папке C:\Program Files\National Instruments\LabVIEW 8.0\examples\comm , также см. Help -> Find Examples, ну и сама справка, встроенная в , например Using ActiveX with LabVIEW. Кроме того, есть множество статей на форумах, всё это довольно легко гуглится.Akimzhan писал(а):Не могли бы вы посоветовать материалы для использования ActiveX и прочего.
Однако, раз вы абсолютный новичок в коммуникациях с приложениями, проще всего вам будет взять библиотеку DocX и с её помощью прочитать документ. Готовая библиотека лежит на вкладке "Releases". Справка по свойствам и методам - на вкладке Wiki. Вот самый базовый пример чтения из .docx: Проверочный файл и то, что считалось, выглядит вот так: Ну, и исходник: Краткое описание алгоритма:
1. открываем .docx файл
2. читаем "сырой" текст из файла (т.е., текст без форматирования); если нам этого достаточно, переходим сразу к п. 6
3. узнаём, сколько в файле параграфов (строчек с переносом)
4. для каждого параграфа (цикл for) получаем текст, в нём содержащийся
5. закрываем ссылку на параграф
6. закрываем ссылки на коллекцию параграфов и на сам файл
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
Огромное спасибо, извиняюсь за немного глупый вопрос и в правду в 21 веке можно сделать все при помощи Google.
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
Попробовал вариант через библиотеку DocX, но при запуске программы Sample.vi в LabVIEW, требуется файл .dll . В итоге выдается сообщение, что путь к файлу не найден и тд. Далее необходимо выбрать программу Application directory.vi которой нет , хотел спросить , как устранить данную проблему, может быть дело в версии или же в самом пакете LabVIEW ?
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
Перед тем, как запускать программу, разблокируйте все файлы, что лежат в архиве. Винда защищается от подозрительного контента из интернета. Нажмите ПКМ -> Свойства -> Разблокировать. Затем запускайте прогу. Естественно, Xceed.Words.NET.dll должен лежать в папке data.Akimzhan писал(а):при запуске программы Sample.vi в LabVIEW, требуется файл .dll . В итоге выдается сообщение, что путь к файлу не найден и тд.
Разве в 8.5 нет App Directory? Это, вроде как, довольно старая штука. Ну, возьмите тогда Current VI's Path (в экзешнике его strip'нуть надо будет). На худой конец вбейте путь константой, по-моему это не проблема.Akimzhan писал(а):Далее необходимо выбрать программу Application directory.vi которой нет
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
dadreamer, Всё сделал , как Вы сказали, но что-то тут не так, не знаю что делать , пробовал и правами админа разблокировать файлы, но всё в пустую. Не знаю что делать.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
Архив трогать не надо. Надо трогать файлы внутри распакованного архива. Да и вы, похоже, не админ (по кр. мере не полный). Выйдите из системы и зайдите под Администратором, разблокируйте файлы. Уберите также атрибут "для чтения", если будет.Akimzhan писал(а):dadreamer, Всё сделал , как Вы сказали, но что-то тут не так, не знаю что делать , пробовал и правами админа разблокировать файлы, но всё в пустую. Не знаю что делать.
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
А на версии 8.5 вообще будет работать данный файл?Потому что пробовал сделать все как вы сказали на другом ноутбуке но вылезает тот скрин который я вам отправил ранее.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
Разобрался, почему у вас не хочет работать. Суть проблемы - Invalid Library Error When Loading a DLL Written in .NET 4.0 Ну, то есть, ранние версии поддерживают .NET Framework 2.0, а Xceed.Words.NET.dll написан на .NET 4.0. Решение - использовать классическую версию DocX.dll 1.0.0.22: https://github.com/xceedsoftware/DocX/releases (снизу, под текущей версией). На диаграмме вам надо будет выбрать эту библиотеку и заново определить свойство/метод для каждого узла - просто жмёте ПКМ на узле и выбираете то, что уже было выбрано. Я проверил на XP и 8.0, всё работает.Akimzhan писал(а):А на версии 8.5 вообще будет работать данный файл?Потому что пробовал сделать все как вы сказали на другом ноутбуке но вылезает тот скрин который я вам отправил ранее.
А вот альтернативный фикс толком не работает - на некоторых свойствах выдаёт эксепшн.
-
- beginner
- Сообщения: 11
- Зарегистрирован: 09 дек 2017, 18:25
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Cчитывание данных файла формата doc
Всё поменял, нашёл необходимые библиотеки , но при запуске, после компиляции вылезает ошибка внутреннего исключения.
-
- leader
- Сообщения: 932
- Зарегистрирован: 17 янв 2016, 15:02
- Награды: 1
- Версия LabVIEW: 6.1,8.5,20
Re: Cчитывание данных файла формата doc
Вы не правильно задаете путь к файлу. Надо задавать относительный путь файла (без кавычек), чтобы отрезать имя файла текущего -> "..\имя файл.docx"
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Cчитывание данных файла формата doc
В ошибке сказано, что файл не найден. После Current VI's Path нужно вставить Strip Path, и с его верхнего выхода взять провод.Akimzhan писал(а):Всё поменял, нашёл необходимые библиотеки , но при запуске, после компиляции вылезает ошибка внутреннего исключения.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение