2013-12-16 53 views
0

我想編寫一個lazy mans命令來輸出我在工作區中選擇的任何變量作爲逗號分隔的.txt文件。我知道你可以使用dlmwrite('outName.txt',varname);,但我想要一些東西,我可以簡單地去out(varname),它也做同樣的事情。MATLAB函數以輸出變量作爲分隔符.txt

到目前爲止,我想出了這一點:需要toget的VARNAME作爲字符串名稱 第一功能

function out = strfromvar(input) 
    out = inputname(1); 
end 

二功能dlmwrite該字符串名和變量...

function [out] = toigor(input) 
    stringName = strfromvar(input); 
    outName = [stringName '.txt']; 
    dlmwrite(outName,input); 
end 

我卡在的地區是outName地區。我無法得到它,因此它將我選擇的變量變成.txt文件。它只是稱之爲'輸入'。該文件按預期工作,但我願意讓程序充分發揮作用。我確信我只是在這裏缺少一點點。

+1

問題是,當你調用你的頂級函數時,你的變量已經有了'輸入'的名字。這個問題可以通過一步完成所有事情來避免。 –

+0

謝謝,我試圖找出爲什麼它保持默認'輸入' –

回答

3

這是什麼做的伎倆對我來說:

function toigor(input) 
    stringName = inputname(1); 
    outName = [stringName '.txt']; 
    dlmwrite(outName,input); 
end 

請注意,您只需要1種功能。

+0

謝謝先生。這讓我很高興。 –

相關問題