2013-04-25 49 views
1

我正在寫一個matlab代碼,經過計算後,以pdf格式打印報告。我正在使用actxserver與Microsoft Word進行通信。用戶輸入最終報告的文件名,並將其保存在預定義的文件夾中。在Matlab中的用戶輸入

我使用,

名稱=輸入( '請輸入文件名', 'S');

WordFileName=name; 
FileSpec = fullfile(pwd,WordFileName); 
[ActXWord,WordHandle]=StartWord(FileSpec); 

function [actx_word,word_handle]=StartWord(word_file_p) 

    actx_word = actxserver('Word.Application'); 
    word_handle = invoke(actx_word.Documents,'Add'); 

end 

function CloseWord(actx_word_p,word_handle_p,word_file_p) 
word_handle_p.ExportAsFixedFormat(word_file_p,17); 
end 

當用戶輸入:報告,則PDF得到作爲report.pdf

但是當文件名具有像例如「1.2MFQ」,文件獲取與文件名生成的另一人物的1.2MFQ產生'和文件類型'2MFQ',沒有pdf擴展名。

這是因爲在matlab中輸入或打印爲PDF?

回答

0

我認爲這是做它而不是Matlab的詞。爲什麼不只是追加.PDF在開頭的文件名字符串:

FileSpec = fullfile(pwd,[WordFileName, ".pdf"]); 
+0

我想在做同樣的,但我覺得,當你輸入「報告」作爲文件名可能出來爲report.pdf.pdf。但是我錯了..它工作得很好......謝謝Dan ... – Mithun 2013-04-25 06:27:38

+0

好吧,測試一下,看看;) – Dan 2013-04-25 06:28:28