2016-02-09 79 views
0

我使用這個php腳本打開一個word文件數組並將它們保存爲文本。它工作正常,除了在某些文件中,MS Word顯示一個對話框,詢問是否確認要求「編碼」或詢問是否「打開文件爲只讀」這很不方便,因爲腳本會一直掛起我手動重新啓動它。php word文檔 - > saveas +編碼+只讀

我的問題是我應該下方添加到腳本「告訴」 MS Word中: -

一個。使用Windows默認編碼進行保存(此選項已被選中,只需按OK按鈕即可)。

b。打開該文件爲只讀

我的劇本就像是部份: -

$word = new COM("word.application"); 
$word->Visible =false; 
$doc = $word->Documents->Open($file); 
$word->Documents[1]->SaveAs(filename,2); // NOTE: 2 is to save file as text 
$doc = $word->Documents->Close(); 
$word->Quit(); 
$word->Release(); 
$word = null; 

在他們的網站上,微軟提到了這一點: -

只讀推薦

真有每當文檔打開時,Microsoft Office Word都會提示只讀狀態。默認值是false。

編碼

MsoEncoding。代碼頁或字符集,用於保存爲編碼文本文件的文檔。缺省值是系統代碼頁。

https://msdn.microsoft.com/en-us/library/microsoft.office.tools.word.document.saveas%28v=vs.120%29.aspx

您的幫助,將不勝感激。由於

+0

一個單詞.doc/.docx沒有「編碼」。你是否試圖打開已重命名爲.doc的html文件?如果是這樣,那麼他們不是真正的單詞文件,並且單詞正確地問你如何處理。 –

+0

將doc/docx保存爲文本(.txt)時,它會要求進行所需的編碼 - 有時。謝謝 – Jess

+0

真的我想知道應該添加到這一行: $ word-> Documents [1] - > SaveAs(filename,2); – Jess

回答

0

顯然,這個問題是通過將這一行的腳本解決: -

$字處理> DisplayAlerts = FALSE;

正如我之前的問題所解釋的,問題是由於對話菜單引起的。
DisplayAlerts = False負責處理該問題。

Regards