【发布时间】:2020-07-17 16:20:15
【问题描述】:
我是 MATLAB 新手,在将字符数组打印到文件时遇到问题。我只打印出第一个字符。我从文件中读取行并构建矩阵矩阵。一个矩阵是一组字符向量。这是我读取数据的方式
tline = fgetl(iin);
t_current = tline(9:34);
...
data.t = [data.t; t_current];
然后我会这样做:
npts = length(data.t);
fid1 = fopen(fname, 'w');
fprintf(fid1, 'Day Rank\n');
fprintf(fid1, '------- -------\n');
for k = 1:npts
time_str = data.t(k);
fprintf(fid1, '%s %f3\n',time_str, data.rank(k));
end
fclose(fid1);
data.t 是 ,看起来像这样:
val =
2015-07-16T03:28:36.410305
2015-07-16T03:29:00.000000
...
我用 fprintf 得到的只是一个“2”。我尝试使用 convertCharsToStrings,但失败并显示错误消息:未定义函数“convertCharsToStrings”用于输入参数类型 '字符'。
这一定是我缺少的一些简单的东西。 谢谢, -迈克
【问题讨论】:
-
%f后面的3有必要吗?
标签: matlab