yongzhen913 发表于 2007-11-5 15:36

对txt文件如何使得保存与读取后数据存储方式一致

A=
A =
   1   2   3
   4   5   6
   7   8   9
>> fid1=fopen('c:\MATLAB6p5\work\123.txt','w');
>> fprintf(fid,'%d',A);
>> fclose(fid)
ans =
   0
>> fid1=fopen('c:\MATLAB6p5\work\123.txt');
>> b=fscanf(fid1,'%d')
b =
   147258369

保存的是矩阵,结果不是矩阵,这个问题怎么解决
先说声麻烦了

[ 本帖最后由 eight 于 2007-11-5 19:23 编辑 ]

pulse 发表于 2007-11-5 18:11

save 123.txt -ASCII A

yongzhen913 发表于 2007-11-5 18:20

回复 #2 pulse 的帖子

多谢阿
好像还不行呢:@(

eight 发表于 2007-11-5 19:24

原帖由 yongzhen913 于 2007-11-5 15:36 发表 http://www.chinavib.com/forum/images/common/back.gif
A=
A =
   1   2   3
   4   5   6
   7   8   9
>> fid1=fopen('c:\MATLAB6p5\work\123.txt','w');
>> fprintf(fid,'%d',A);
>> fclose(fid)
ans =
   0
...

请先到精华区看看有否收获

lilongduzhi 发表于 2008-5-2 12:20

A=
fid=fopen('d:\Program Files\MATLAB71\work\123.txt','w');
fprintf(fid,'%d %d %d\n',A);
fclose(fid)

sogooda 发表于 2008-5-2 18:30

回复 5楼 的帖子

5楼的方法得到的好像是转置后的A矩阵。是版本问题?我觉得不像。

建议楼主浏览置顶帖先。

ch_j1985 发表于 2008-5-2 19:19

原帖由 sogooda 于 2008-5-2 18:30 发表 http://www.chinavib.com/forum/images/common/back.gif
5楼的方法得到的好像是转置后的A矩阵。是版本问题?我觉得不像。

建议楼主浏览置顶帖先。

我也试了一下,不是版本问题,5楼的方法不能满足
下面是我编的一段代码:

A=;
=size(A);
fid1=fopen('C:\Documents and Settings\Administrator\桌面\123.txt','w');
for i=1:B
    fprintf(fid,'%d %d %d\n',A(i,1),A(i,2),A(i,3));
end
fclose(fid)

A=;
=size(A);
fid1=fopen('C:\Documents and Settings\Administrator\桌面\123.txt','w');
for i=1:B
   fprintf(fid,'%d %d %d\n',A(i,:));
end
fclose(fid)

w89986581 发表于 2008-5-2 19:43

人为加上空格与回车就可以了。

fanghogyuan 发表于 2008-5-11 13:06

回复 7楼 的帖子

请问下,那如果是比较大的矩阵呢,例如21*300呢,是不是要输入21个%d呢,有什么其他方式么

ch_j1985 发表于 2008-5-11 13:19

原帖由 fanghogyuan 于 2008-5-11 13:06 发表 http://www.chinavib.com/forum/images/common/back.gif
请问下,那如果是比较大的矩阵呢,例如21*300呢,是不是要输入21个%d呢,有什么其他方式么

试试这个:

A=;
=size(A);
fid1=fopen('C:\Documents and Settings\Administrator\桌面\1234.txt','w');
for i=1:B
    for j=1:C
      fprintf(fid1,'%d',A(i,j));
    end
    fprintf(fid1,'\n');
end
fclose(fid1)

fanghogyuan 发表于 2008-5-11 13:44

回复 10楼 的帖子

谢谢您这么关心我的问题,我使用fwrite函数好像不支持‘d%‘这个参数啊,总显示fwrite命令出错,我的保存为二进制格式

superkaka123 发表于 2008-5-11 18:36

保存为二进制格式显示不支持是什么原因
页: [1]
查看完整版本: 对txt文件如何使得保存与读取后数据存储方式一致