4

我有一个使用 ISO8859-1 用 Matlab 编写的带有字符串和注释的大型应用程序。我想在 UTF-8 Matlab 环境(Linux 下的 Matlab 2012a)中运行和更新这个应用程序。可能吗?编辑器显示所有非 ASCII 字符的小方块,字符串比较似乎不起作用。

他是我的快速解决方案:

看起来没有万无一失的方法来处理从 Matlab 本身内部的非本机编码。我想象从应用程序内部强制编码更改无济于事。相反,我在启动 Matlab 之前从命令行更改了我的语言环境。就像是

export LC_CTYPE="en_US.ISO-8859-1"; matlab;
4

1 回答 1

3

您可以简单地使用外部程序转换文件编码。参见例如https://askubuntu.com/questions/41643/how-to-convert-multiple-iso8859-1-to-utf-8。唯一的问题是,如果您想在较旧的 Windows Matlab 版本上运行它们,您可能必须将编码转换回来。

如果您不想转换文件,请尝试在 Matlab 提示符下使用未记录的命令功能('DefaultCharacterSet'、'ISO8859-1')。我从未使用过它,所以我不知道是否对您有用,但值得一试。

于 2013-06-06T22:45:14.993 回答