Forum Webscript.Ru
Программирование => Perl => Тема начата: Troum от 28 Мая 2003, 13:01:01
-
Встала такая проблема, надо скриптом обработать (выдрать оттуда некоторый текст) кучу файлов MS Word, причем в двух версиях - 7 и 5.5 :eek:
Всвязи с этим 2 вопроса
1. Есть ли готовые средства/модули для решения этой задачи
2. Когда пытаюсь прочесть файл Word 5.5, как текстовый
foreach $file (grep {/\\.doc$/i} readdir(DIR))
{open (F, "$dir/$file");
while () {........}
}
то после прочтения 2-х первых символов обработка заканчивается.
Рискну предположить, что где-то встречается символ, который интерпретируется как конец файла.
Как это можно победить?
-
1. Win32::OLE
2. а ты его блокнотом открой. что видим? ;)
-
1. на activestate.com нашел Win32-OLE-OPC. Пойдет?
2. Сначала некие спецсимволы (иероглифы) а далее нужный текст в кодировке 866
-
1. Win32::OLE есть на этом сайте
2. Это шутка была.. Ты его так не прочитаешь.
-
1. Гмм, пока не вижу (под перл 5.8)
2. Так а в чем проблема-то?
-
1. Нашел
-
по п. 2.
заработал тока такой вариант: с помощью Win32::OLE сохранил все файлы как текст DOS с разбиением на строки. Со всеми другими форматами была вышеозначеная проблема. Почему, так и не понял