【发布时间】:2013-06-04 08:51:02
【问题描述】:
这是一个后续问题
Reading parameters from a text file into the workspace
我想知道,我将如何阅读以下内容:
% ---------------------- details --------------------------
%---------------------------------------------------------------
% location:
lat = 54.35
lon = -2.9833
%
Eitan T 建议使用:
fid = fopen(filename);
C = textscan(fid, '%[^= ]%*[= ]%f', 'CommentStyle', '%')
fclose(fid);
从文件中获取信息然后
lat = C{2}(strcmp(C{1}, 'lat'));
lon = C{2}(strcmp(C{1}, 'lon'));
获取相关参数。我怎么能改变这个来阅读以下内容:
% ---------------------- details --------------------------
%---------------------------------------------------------------
% location:
lat = 54.35
lon = -2.9833
heights = 0, 2, 4, 7, 10, 13, 16, 19, 22, 25, 30, 35
Volume = 6197333, 5630000, 4958800, 4419400, 3880000, 3340600,
3146800, 2780200, 2413600, 2177000, 1696000, 811000
%
变量应该包含等号后面的所有数据点(直到下一个变量的开始,在这种情况下为 Volume)?
感谢您的帮助
【问题讨论】:
-
Volume的数据实际上是在多行上,还是您在这个问题中只是这样写的? -
我会使用
textscan()、regexp()读取整个文件,然后使用str2double()进行转换。我没有给出任何例子,因为从我之前的回答中,我没有得到关于你的文件是否表现良好的反馈,现在这是一个后续问题,可能还有更多问题,直到你展示关于你的文件的全部交易拥有和你需要的东西。