为任何MATLAB变量生成.m文件代码

为任何MATLAB变量生成.m脚本代码。如果运行,代码将重新创建输入变量。
3.5K下载
已更新2009年6月23日

查看许可证

您是否曾尝试检查和修改深度嵌套的结构/单元格变量?当然,MATLAB变量编辑器将有助于可视化这些变量。然而,为了自动创建这样一个变量或定期更改一些深度嵌套的字段,此提交可能很有用。
主要功能是GENCODE。此函数递归遍历输入变量。如果输入变量的当前部分的值可以表示为MATLAB赋值的右侧(通常情况下,这种情况最多适用于2D矩阵、字符或单元格数组),则递归停止。在这种情况下,调用GENCODE_RVALUE为赋值的右侧创建代码,调用GENCODE_SUBSTRUCT为输入变量创建正确的引用。

一个非常简单的例子:
%具有2个字段“a”和“b”的结构变量
x.a=1;
x.b=“somestring”;
%为其生成代码
str=发电机代码(x);
%显示此代码
字符(str)
%清除原始变量
清除x
%通过评估代码重新创建
eval(sprintf(“%s”,str{:}))

hgsave_pre2008a.m中提供了一个更真实的示例。在MATLAB 2008a中,GUIDE将%自动uicontrol回调保存为匿名函数句柄。不幸的是,当加载包含某些匿名函数的.fig/.mat文件时,MATLAB R14SP3崩溃。一个可能的解决方法是
1.在MATLAB 2008a中打开.fig文件
2.为其生成代码
3.在MATLAB R14SP3中运行生成的代码
4.将结果变量保存在新的.fig文件中

引用为

Volkmar Glauche(2024年)。为任何MATLAB变量生成.m文件代码(https://www.mathworks.com/matlabcentral/fileexchange/24447-generate-m-file-code-for-ay-matlab-variable),MATLAB中央文件交换。恢复.

MATLAB版本兼容性
使用创建R14SP3型
与任何版本兼容
平台兼容性
窗户 macOS操作系统 Linux操作系统
类别
在上查找更多信息编程在里面帮助中心MATLAB答案

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始狩猎!

示例/html/

版本 出版 发行说明
1.1.0.0

修复了稀疏矩阵创建中的错误。
更新文档。

1.0.0.0