我使用num2str
來打印整數數組。我的問題是,格式%d,
(通知沒有標誌或字段寬度)不會產生逗號分隔值的列表,如我所料。num2str爲整數格式設置恆定寬度
相反,它似乎通過引入空格來強制所有元素的寬度相同。我想擺脫這些空間。例如:
>> num2str(randi(10,1,10),'%d,')
7, 8,10,10, 2, 2, 7, 1, 6, 6,
>> num2str(randi(10,1,10),'%d,')
9,5,4,7,8,6,4,2,6,3,
在第一個例子,你可以看到,所有的元素都爲2的寬度 - 這是所有元素中最大的寬度,但我寧願輸出列表緊湊:7,8,10,10,2,2,7,1,6,6,
。在第二個示例中,最大寬度爲1,並且沒有引入空格。我不明白爲什麼Matlab會強制所有元素具有相等的字段長度。
能否downvoter請解釋一下? – Sheljohn 2014-09-03 11:58:54
也許這個例子可能會更好,也就是說爲什麼有兩個例子,而不是陳述你產生了什麼結果和你想要的結果,並指定它們之間的差異?即:我使用這行代碼''num2str(randi(10,1,10),'%d')''並得到這個輸出''7,8,10,10,2,2,7,1 ,6,6,''你可以看到1位數字和分隔符之間的空格,但是我想擁有7,8,10,10,2,2,7,1,6,6 ''。我怎麼能得到這個?爲了重現這個問題,你需要幸運地畫一個''10'',那麼最好從1到15畫數字。 – Nras 2014-09-03 12:42:50
@Nras,現在好點了嗎? – Sheljohn 2014-09-03 12:55:07