[英]Octave: Problems with load
我目前正在Octave中做一個程序,希望用戶能夠插入他要加載的文件。 有問題的文件是.mat文件,並與
加載(“ filename.mat”)
我正在考慮做這樣的事情:
file = input(“文件名是什么:”)
加載(“文件”)
但這沒用...
有人提示嗎?
可能是因為您需要輸入用單引號引起來的文件名:'filename'。 (注意:我使用MATLAB,但在Octave中應該可以正常使用)。
或者,您可以使用inputdlg
請求用戶輸入。 它可以為您提供很大的靈活性,因為您可以在提示中添加字段,例如文件擴展名或其他。
這是一個簡單的示例:
clear
clc
prompt = {'Enter file name'};
dlg_title = 'Input';
num_lines = 1;
def = {'Dummy file'};
answer = inputdlg(prompt,dlg_title,num_lines,def)
提示如下:
您可以像這樣獲取請求:
name = answer{1};
最后添加擴展名以加載.mat文件:
filename = strcat(name,'.mat')
S = load(filename)
只需使用文件擴展名即可:
prompt = {'Enter file name'; 'Enter file extension'};
dlg_title = 'Input';
num_lines = 1;
def = {'Dummy file'; '.mat'};
answer = inputdlg(prompt,dlg_title,num_lines,def)
name = answer{1};
extension = answer{2};
filename = strcat(name,extension)
S = load(filename)
希望有幫助!
我使用了Benoit_11的方法,但是將其更改為input,因為inputdlg似乎在Octave中不起作用。
明確
c
name = input('輸入文件名,不帶文件擴展名:','s')
文件名= strcat(name,'。mat')
S =負載(文件名)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.