2016-04-27 55 views
0

我想写一个数据,以特定的方式格式化到Matlab中的文件。我想要实现的格式是这样的:写在Matlab中的文件

00 : A4AD; 
02 : 9889; 
03 : 9888; 
04 : 9888; 
05 : A021; 

这是一个.mif文件的格式,如果有人有兴趣,我需要它,以加载在我的DE2 FPGA板ROM。

目前在Matlab中,我有两个大小为m x n的数组,填充字符,我只需要将这些数组写入上述格式的文件。基本上我有两个数组A和B,并且我想将这些数组中的数据写入文件A:B; A的元素像00,B的元素像AB03。

我已经能够通过自身使用dlmwrite函数写一个单一的阵列,像这样:

dlmwrite('test.hex', Jhex, 'delimiter', '');

这只是让我从一个阵列上的单行文件中的每个条目。我只是无法用上面的格式写出两个数组。如果有人对如何解决这个问题有什么建议,我会很感激。

+0

['fprintf'(http://www.mathworks.com/help/matlab/ref/fprintf.html) – excaza

+0

@excaza好吧,我已经看到了,但fprintf中在C中使用类似吗?例如,我应该使用 'fprintf('testfile.hex','%s:%s; \ n',A,B)' – skippy130

+0

是的,阅读文档... – excaza

回答

0

您需要一次写一行。要么使用for循环或arrayfun

PrintLine = @(a,b) fprintf('testfile.hex', '%s : %s;\n', a, b); 
arrayfun(PrintLine,A,B);