matlab中uigetfile命令的應用

2022-03-16 07:28:52 字數 2408 閱讀 5570

matlab中uigetfile命令的應用

此函式的用法為

[filename,pathname,filterindex] = uigetfile(filterspec,dialogtitle,defaultname)

filename:返回的檔名

pathname:返回的檔案的路徑名

filterindex:選擇的檔案型別

filterspec:檔案型別設定

dialogtitle:開啟對話方塊的標題

defaultname:預設指向的檔名

例子:(接來自matlab的幫助)

1.最簡單的形式,只設定了一種可選擇的檔案型別

[filename,pathname] = uigetfile('*.m','select the m-file');

2.設定多種檔案型別

[filename, pathname] = ...

uigetfile(,'file selector');

3.可以為檔案型別設定說明,注意書寫格式

[filename, pathname] = uigetfile( ...

, ...

'pick a file');

4.可返回選擇的檔案型別序號,並且可以設定檔案多選,設定檔案多選時注意,當只選了乙個檔案時,返回的filename為字串,選擇多個檔案時,返回的元胞型別。

[filename, pathname, filterindex] = uigetfile( ...

, ...

'pick a file', ...

'multiselect', 'on');

5.可以設定預設檔名

一點小技巧:當返回了乙個檔案的時候,可以用fullfile將路徑和檔名組合起來,如

[filename, pathname] = uigetfile('*.m', 'pick an m-file');

if isequal(filename,0)

disp('user selected cancel')

else

disp(['user selected', fullfile(pathname, filename)])

endfullfile的用法如下

上傳乙個自己編的小程式,用來實現檔案的批量縮放(幫班級上傳,但是太大了,太佔空間,若乙個乙個縮小有太費事,於是就有了這個小程式,呵呵,僅為應用,未考慮異常處理)

%修改的大小

%%clc

clear all

close all

%%scale=inputdlg('縮放比(大於1為放大,小於1為縮小)','請輸入縮放比',1,);

%%[filename, pathname] = uigetfile( ...

,...

'請選擇要修改的(可多選)', ...

'multiselect', 'on');

%%if ~iscell(filename)

filename1=filename;

else

filename1=filename;

end%%

for i=1:length(filename1)

image=imread(strcat(pathname,filename1));

image_resize=imresize(image,eval_r(scale));

imwrite(image_resize,strcat(pathname,datestr(now, 'mmddhh'),filename1));

end其中的inputdlg函式實現乙個要求使用者輸入資訊的對話方塊,用法如下

answer = inputdlg(prompt,dlg_title,num_lines,defans,options)

prompt:輸入文字框的標籤

dlg_title:對話方塊的標題

num_lines:輸入文字框的行數

defans:預設的文字框內容

options:一些可選的對話方塊選項

如prompt=;

name='input for peaks function';

numlines=1;

defaultanswer=;

options.resize='on';

options.windowstyle='normal';

options.interpreter='tex';

answer=inputdlg(prompt,name,numlines,defaultanswer,options);

返回為字串,如果想轉化為數字,可以是使用函式eval。

另外input函式也可以實現使用者資訊輸入,不過是在命令列中輸入,也很簡單、常用。

Matlab 在Matlab中如何畫圓

rectangle函式功能 建立二維矩形物件。1.1 rectangle position x,y,w,h 其中以x,y為起始座標開始,畫出長為w,寬為h的矩形。1.2 rectangle curvature a,b 指定矩陣邊的曲率,可以使它從矩形到橢圓不同變化,水平曲率x為矩形寬度的分數,是沿著...

Matlab中的括號()

matlab中經常會用到括號去引用某array或者是cel l的內容,但三者有什麼具體區別呢?中括號用來構建向量 vectors 或者是矩陣 matrices 如 6.9 9.64 sqrt 1 就是乙個有三個元素的向量。11 12 13 21 22 23 是乙個二乘三的矩陣.分號 用來結束一行。中...

MATLAB中fopen fprintf函式的用法

matlab中fopen函式在指定檔案開啟的例項如下 1 fopen 開啟檔案,賦予檔案代號。語法1 fid fopen filename,permission 用指定的方式開啟檔案 fid n n是正整數 表示檔案開啟成功,檔案代號是n.fid 1 表示檔案開啟不成功。fid在此次檔案關閉前總是有...