这个函数解析INI文件FileName,并将其作为一个结构返回,其中节名和键作为字段。
INI文件的部分作为INI结构的字段返回。每个磁共远(INI文件的部分)反过来是结构。它的字段是来自INI文件的相应部分的变量。
如果INI文件在开头包含“OPRHAN”变量,则它们将被添加为INI结构的字段。
以';'和'#'开头的行被忽略(注释)。
有关更多信息,请参见下面的示例。
通常,只要介于“['和']'之间,ini文件允许在没有限制的情况下放置部分名称中的空格和数字。它让人们疯狂将它们转换为有效的Matlab变量。为此目的,Matlab提供了GenVarname函数,这是
“从给定候选人构造有效的MATLAB变量名称”。
有关更多信息,请参阅“帮助Genvarname”。
INI2STRUCT函数使用GENVARNAME将奇怪的INI文件字符串转换为有效的Matlab字段名。
[test.ini] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SectionlessVar1 =哦
Fectionessvar2 =我再做了; o)
[应用]
标题=酷程序
lastdir = c:\远离
Numberofsections = 2
[第1部分]
param1 = Val1.
Param 2 = Val 2
[第2节]
param1 = Val1.
Param 2 = Val 2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
该函数将此INI文件转换为以下结构:
[MATLAB会话(R2006B)] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> Ini = Ini2struct('test.ini');
>> DISP(INI)
Fectionessvar1:'哎呀'
Fectionesslvar2:'我再做了; o)'
应用:[1x1 struct]
X1Stection:[1x1 struct]
Section0x232:[1x1 struct]
>> DISP(INI.APPLICATION)
标题:'酷程序'
Lastdir:'c:\远离'
Numberofsections:'2'
> > disp (INI.x1stSection)
param1:'val1'
param2:'val 2'
>> DISP(INI.SECTION0X232)
param1:'val1'
param2:'val 2'
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
笔记。
whattododemyverycoolsectionandvariablenamesininifilemyverycoolprgramprites?
Genvarname还执行以下操作:
“超过NameLengthMax的任何字符串被截断”。(Doc Genvarname)
Andriy Nych(2021)。Ini2struct.(//www.tatmou.com/matlabcentral/fileexchange/17177-insstrice),Matlab中央文件兑换。检索到。
如果您想使其更好,请使用eval(val)进行。
伟大的工作!完美解决了我的问题!
很酷的工作
工作正常
好,伟大的
不错的工具,我还添加了对数字类型的支持,添加了两金宝app行:
[val_cand status] = str2num(val);
如果status,val = val_cand;结尾;
谢谢!