Add new line in .ini file

7 次查看(过去 30 天)
Deepa Maheshvare
Deepa Maheshvare 2021-12-19
I'm trying to set the properties of a class by loading the contents of the initialization file in a class method.
Source for INI class (https://www.mathworks.com/matlabcentral/fileexchange/55766-ini).
classdef setting
properties(Constant)
test_graph = settings_utils.data.test_graph;
end
methods(Static)
function data = load_data
I = INI('File','input.ini');
I.read();
data = I.get('UserData'); % struct
end
end
end
example.ini includes the following
[UserData]
test_graph = struct( ...
'test1', false, ...
'test2', false, ...
'test3', false)
>>> settings.test_graph
ans =
'struct(...'
I would like to know how to add new line in .ini files.
I tried to add `...` which is how I add multiple lines in .m files. But this doesn't work i.e the struct is not read correctly from the .ini file; it is read as a string.
  6 个评论
Deepa Maheshvare
Deepa Maheshvare 2021-12-19
编辑:Walter Roberson 2021-12-19
I'm sorry, I forgot to add the reference.
Please find the INI class link here

请先登录,再进行评论。

回答(1 个)

Jacob Mathew
Jacob Mathew 2024-2-16
编辑:Jacob Mathew 2024-2-16
I was able to reproduce the difficulty you were facing using the same INI Add on in MATLAB R2021a. However, even after multiple approaches of declaring multi-line values, the read function of this specific Add On only reads a single line.
A possible workaround is to write the entire struct in a single line in the INI file as follows:
% input.ini file
[UserData]
test_graph = struct('test1',false,'test2’,false,’test3’,false)
The documentation for struct can be found here:
Then when you perform the read operation, it will be read as a struct. The following code and screenshot below demonstrate the same:
% MATLAB Code to read from the INI file
File = 'input.ini';
I = INI('File',File);
I.read();
data = I.get('MyData');

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

标签

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by