我會嘗試dlmwrite
:
delim = repmat(' ',length(imgA(:,1)),1);
output = [ imgA(:,1) , delim , imgB(:,1) ]
dlmwrite('test.txt',output,'')
十六進制格式已經字符串,所以這很簡單,但你需要一個分隔符矩陣,讓您的向量之間的一些空間。
例子:
tic
A = dec2hex(randi(10000,10000,1));
B = dec2hex(randi(10000,10000,1));
delim = repmat(' ',length(A),1);
output = [A, delim, B];
dlmwrite('test.txt',output,'');
toc
相當快我想:
經過的時間0.860588秒。
對於100000元素:
經過時間8.652231秒。
所以時間顯然與元素的數量成線性關係。我不知道這是否是最後的速度比fprintf
如果你不會有十六進制格式,但小數這種做法是definetely更快:
A = randi(10000,100000,1) ;
B = randi(10000,100000,1) ;
C = [A, B];
save('test.txt','C','-tabs','-ascii');
假設A
和B
是列向量,否則轉置它們。
已用時間爲0.155126秒。
不相關但很好知道:你不需要圍繞字符串參數的括號。 –