Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.22;
Скачать: CL | DM;

Вниз

Текст в .doc   Найти похожие ветки 

 
Ajax ©   (2002-03-13 19:09) [0]

Мне нужно получить весь текст из вордовского файла, причем форматирование и всякие там картинки меня не интересуют. Только текст. Я так поковырял немножко doc, чего-то не понятно. Часть текста видно, часть нет. Возможно там своя кодировка? Какие есть варианты по получение текста? (OLE использовать нежелательно)


 
VictorT   (2002-03-13 19:26) [1]

Начиная с 97 Ворда в документах используется так называемая кодировка unicode.


 
Ajax ©   (2002-03-13 19:50) [2]

Я вроде бы нашел где в doc текст прячется. Смещение 2560, но это только на основе нескольких опытов. Было бы хорошо что-нибудь по-цивильнее...

Попробую в сети про unicode поискать, но если у кого-то есть готовый код, не откажусь.


 
Дмитрий ©   (2002-03-13 20:37) [3]

Дарю.

const wdFormatDocument = 0;
wdFormatDOSText = 4;
wdFormatDOSTextLineBreaks = 3;
wdFormatEncodedText = 7;
wdFormatHTML = 8;
wdFormatRTF = 6;
wdFormatTemplate = 1;
wdFormatText = 2;
wdFormatTextLineBreaks = 3;
wdFormatUnicodeText = 7;

{ Это из .tlb }


function ConvertDir(const InDir, OutDir: string): boolean;
var Doc: OleVariant;
F: TSearchRec;
begin
try
CoInitialize(nil);
Doc:=CreateOleObject("Word.Application");
if not (DirectoryExists(OutDir)) then
CreateDirectory(PChar(OutDir), nil);
if FindFirst(InDir+"\*.doc", faAnyFile, F) = 0 then
begin
while FindNext(F) = 0 do
begin
Doc.Documents.Open(InDir+"\"+F.Name);
Doc.ActiveDocument.SaveAs(FileName:=OutDir+"\"+ChangeFileExt(F.Name, ".txt"), FileFormat:=3);
Doc.ActiveDocument.Close();
Application.ProcessMessages();
end;
end;
finally
begin
Doc.Quit;
Doc:=unassigned;
end;
CoUninitialize();
end;
end;


 
Дмитрий ©   (2002-03-13 20:41) [4]

..только я не понял, чем вас COM не устраивает? Не нравится OleVariant - импортируйте TypeLibrary.



Страницы: 1 вся ветка

Текущий архив: 2002.04.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-69888
panoff
2002-04-09 11:53
2002.04.22
Юзер создаёт кол-во строк в MENUItem


1-69802
kserg@ukr.net
2002-04-10 14:42
2002.04.22
Как


1-69844
Vij
2002-04-11 09:57
2002.04.22
HTML Editor


1-69907
inko
2002-04-09 15:37
2002.04.22
Как реализовать проверку расширения файлов?


6-69947
hair_fly
2002-02-11 12:55
2002.04.22
Подскажите, плз, сколько портов приемлемо использовать в одной проге ?