データベースのエントリ仕様を持つ.docファイルがたくさんあります。これらすべてのドキュメントを解析し、ドキュメント内の情報を使用してエントリを作成する必要があります。私はCOMアプローチを使おうとしています。ファイルの上部と下部にプレーンテキストがあります...ただし、仕様はページ中央の表にあります。新しい.txtファイルのリンクを解除しないと、コンテンツが新しいドキュメントに転送されていることがわかりますが、[]の形式で無効な文字が大量に実行されています。file_get_contents()を使用すると、テーブルのすべてのテキストが完全に無視されます。
プログラムでこれを処理する方法はありますか?word.applicationCOMオブジェクトのAPIに関する情報が実際には見つかりません。理想的には、フォーマットを削除してから、ファイルを.txtファイルなどとして保存する必要があると考えています。
どんな助けでも大歓迎です。
これが私のコードです:
$dir = $PATH."/scripts/specsheets/doc";
$files = scandir($dir);
foreach( $files as $file ) {
if( strtolower(substr($file, -3)) == "doc" ) {
$word = new COM("word.application") or die("Unable to instantiate Word");
$word->Documents->Open($dir."/".$file);
$new_file = substr($dir."/txt/".$file, 0, -4).".txt";
$word->Documents[1]->SaveAs($new_file, 2);
$word->Documents[1]->Close(false);
$word->Quit();
$word = NULL;
unset($word);
$output = file_get_contents($new_file);
rename($dir."/".$file, $dir."/archive/".$file);
echo utf8_encode($output);
}
}