我有一个这样的txt文件:
1,6 2 6,5 5 ... // ~ 1000 columns
0 1 4 2,5 ...
... // ~1000 rows
即用“,”代替“.”作为小数点分隔符。
如何在 MATLAB 中正确读取此内容并输出:
1.6 2 6 5 ...
0 1 4 2.5 ...
...
没有简单的内置方法可以做到这一点(令人惊讶!)。您需要读取整个文件,然后进行字符串替换,然后将结果转换为数字。
% Read file in as a series of strings
fid = fopen('data.txt', 'rb');
strings = textscan(fid, '%s', 'Delimiter', '');
fclose(fid);
% Replace all commas with decimal points
decimal_strings = regexprep(strings{1}, ',', '.');
% Convert to doubles and join all rows together
data = cellfun(@str2num, decimal_strings, 'uni', 0);
data = cat(1, data{:});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)