2

我正在努力使用 php COM 对象来读取(.doc)字数据。问题是当我从 doc 文件中检索内容时,数据正在显示,但没有显示实际数据 -

example.doc 内容

Čo je 到 zubný povlak?Zubný povlak je lepkavá a bezfarebná vrstva baktérií a cukrov, ktorá sa neprestajne tvorí na povrchu zubov。Býva hlavnou príčinou zubných kazov a parodontitídy a ak sa denne neodstraňuje, môže stvrdnúť a zmeniť sa na zubný kameň。

php

$filename = 'example.doc';
$word = new COM("word.application") or die ("Could not initialise MS Word object.");
$word->Documents->Open(realpath($filename));

// Extract content.
$content = (string) $word->ActiveDocument->Content;

echo nl2br($content);

$word->ActiveDocument->Close(false);

$word->Quit();
$word = null;
unset($word);

结果显示

Co je 到 zubný povlak?Zubný povlak je lepkavá a bezfarebná vrstva baktérií a cukrov, ktorá sa neprestajne tvorí na povrchu zubov。Býva hlavnou prícinou zubných kazov a parodontitídy a ak sa denne neodstranuje,môže stvrdnút a zmenit sa na zubný kamen。Ako zistím, že mám zubný povlak?

喜欢Čo显示Co而不是Čo

非常感谢任何帮助,或者是否有任何其他方法可以读取可以完美显示字符的 doc 文件(不是 docx)?

4

1 回答 1

0

这可能是编码错误(您的文本是 utf8 吗?)。

根据文档(查找代码页参数),您可以将代码页设置为第三个参数。例如 utf8 :

$word = new COM("word.application", NULL, CP_UTF8) ;
于 2013-06-10T13:22:21.203 回答