查看完整版本 : [MATLAB混合编程] 关于fwrite
tigermatlab
2009-05-09, 22:45
a=[1 2 3 4 5 6 7 8 9]
a =
1 2 3 4 5 6 7 8 9
fid=fopen('aa.txt')
fid =
3
fwrite(fid,a,'integer*4')
ans =
0
请问,fwrite的结果为什么没有把a的数据写入aa.txt中?
请高手赐教
呵呵,试试这样
fid=fopen('aa.txt','w')
tigermatlab
2009-05-10, 11:53
谢谢你,实验证明您说的有理。
我又进行了如下实验:
a=[7 8 9]
fid=fopen('mask.seg','w') % 创建一个文件mask.seg,以便于写入数据
count=fwrite(fid,a,'int8') % 把数据a写入mask.seg
m=fread(fid) % 把写入的数据读取出来
但实验出现了如下结果:
a =
7 8 9
fid =
3
count =
3
m是一个4093×1的数组
请问m为什么会是这个结果呢?为什么有 4093个呢?
silas_xue
2009-05-10, 12:05
lz 你可以阅读一下fopen中关于fid的解释
fid is a scalar MATLAB integer, called a file identifier.
apple888
2009-05-10, 16:32
你需要将以打开的文件关闭,然后再读就得到所写入的数据
tigermatlab
2009-05-12, 10:34
lz 你可以阅读一下fopen中关于fid的解释
fid is a scalar MATLAB integer, called a file identifier.
是的,我试了,如你所言是对的。谢谢!
tigermatlab
2009-05-12, 10:35
你需要将以打开的文件关闭,然后再读就得到所写入的数据
是的,我试了,如你所言是对的。谢谢!
vBulletin® v3.8.3,版权所有 ©2000-2025,Jelsoft Enterprises Ltd.