Arrays 如何在MATLAB中将.mat文件内容保存在内存中?
我想获取特定矩阵的.mat文件的字节数组。我该怎么做 我可以通过以下命令在磁盘上保存矩阵:Arrays 如何在MATLAB中将.mat文件内容保存在内存中?,arrays,matlab,serialization,mat-file,Arrays,Matlab,Serialization,Mat File,我想获取特定矩阵的.mat文件的字节数组。我该怎么做 我可以通过以下命令在磁盘上保存矩阵: save('a.mat', 'a') 现在,我不想将.mat文件保存在磁盘上。相反,我希望它在内存中通过网络发送。我认为这是不可能的。但是您可以将MAT文件写入一个临时目录(请参见tempdir),然后将其作为二进制文件打开,将其内容作为uint8数组或类似的东西读回内存中。嗯。。。如果要通过网络发送mat文件的二进制内容,您别无选择,只能按以下步骤进行: 以mat格式将数据保存到磁盘: save('a
save('a.mat', 'a')
现在,我不想将.mat文件保存在磁盘上。相反,我希望它在内存中通过网络发送。我认为这是不可能的。但是您可以将MAT文件写入一个临时目录(请参见
tempdir
),然后将其作为二进制文件打开,将其内容作为uint8数组或类似的东西读回内存中。嗯。。。如果要通过网络发送mat
文件的二进制内容,您别无选择,只能按以下步骤进行:
mat
格式将数据保存到磁盘:
save('a.mat','a')代码>
mat
文件作为字节数组读取:
fid=fopen('a.mat','r')代码>
data=fread(fid)代码>
发送数据(数据)代码>
mat
文件以提取数据,或者在运行时构建自己的mat
文件,.您可以使用两个(和内部使用)来序列化/反序列化数据。这将允许您将矩阵a
编码为字节流,与保存
存储在.mat文件中时的方式相同:
byteStream = getByteStreamFromArray(a);
然后,您可以通过网络发送此字节流数据,并在接收端对其进行解码,如下所示:
a = getArrayFromByteStream(byteStream);
你是说加载('a.mat')
?