PDA

查看完整版本 : [MATLAB基础] 读取文本文件出错


yingsu
2009-08-21, 16:23
我刚刚学习matlab,用matlab读取文本文件,n行4列。数值比较大,比如
240072.080 3988440.220 40.020 0.4
240071.960 3988441.920 35.910 1.7
240071.790 3988443.710 35.910 3.4。
编写的matlab读取程序为:
[FileName,PathName] = uigetfile('*.txt');
name=[PathName FileName];
fid=fopen(name,'r');
[a,count]=fscanf(fid,'%lf')
可是,这样读取之后,a矩阵为4*n行1列,而且数据为指数类型,读取的数值四舍五入出现偏差。
我更改程序如下后:
[a,count]=fscanf(fid,'%s%c')
读取的矩阵反映原始数据,但是为字符型。
因为我想用前三列数据成曲面图,字符型的矩阵不能提取出数值,不知道可怎么更改?

silas_xue
2009-09-17, 00:35
lz 可以参考一下matlab的help中char( )的说明 可以使用double进行相关的转换
希望可以对你有些帮助

Thx for reading.
PS:若还算满意,直接点击“Thanks”,再次登陆时亦便于查看回答是否真的帮到你了。
通过点击本人帖子旁边的ID 可以使用“发送悄悄话给silas_xue”与我进行联系
个人观点 仅供参考 多多交流 相互学习