1

我正在编写一个 matlab 代码,该代码在计算后以 pdf 格式打印报告。我正在使用 actxserver 与 Microsoft Word 进行通信。用户输入最终报告的文件名,并将其保存在预定义的文件夹中。

我在用,

name = input('请输入文件名','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

当用户输入:report 时,pdf 生成为 report.pdf

但是当文件名包含其他字符(例如“1.2MFQ”)时,会生成一个文件名为“1.2MFQ”且文件类型为“2MFQ”且没有 pdf 扩展名的文件。

这是因为在 matlab 中的输入还是在打印为 pdf 期间?

4

1 回答 1

0

我认为这是文字而不是Matlab。为什么不直接将 .pdf 附加到文件名字符串的开头:

FileSpec = fullfile(pwd,[WordFileName, ".pdf"]);
于 2013-04-25T06:18:29.530 回答