久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

uigetfile命令的應(yīng)用

 昵稱16851476 2014-05-21

matlab中uigetfile命令的應(yīng)用

 (2011-10-27 11:40:00)
標(biāo)簽: 

雜談

uigetfile命令的應(yīng)用  

此函數(shù)的用法為

[FileName,PathName,FilterIndex] = uigetfile(FilterSpec,DialogTitle,DefaultName)

FileName:返回的文件名

PathName:返回的文件的路徑名

FilterIndex:選擇的文件類型

FilterSpec:文件類型設(shè)置

DialogTitle:打開對(duì)話框的標(biāo)題

DefaultName:默認(rèn)指向的文件名

 

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

1.最簡單的形式,只設(shè)置了一種可選擇的文件類型

[FileName,PathName] = uigetfile('*.m','Select the M-file');

2.設(shè)置多種文件類型

[filename, pathname] = ...
     uigetfile({'*.m';'*.mdl';'*.mat';'*.*'},'File Selector');

3.可以為文件類型設(shè)置說明,注意書寫格式

[filename, pathname] = uigetfile( ...
{'*.m;*.fig;*.mat;*.mdl','MATLAB Files (*.m,*.fig,*.mat,*.mdl)';
   '*.m',  'M-files (*.m)'; ...
   '*.fig','Figures (*.fig)'; ...
   '*.mat','MAT-files (*.mat)'; ...
   '*.mdl','Models (*.mdl)'; ...
   '*.*',  'All Files (*.*)'}, ...
   'Pick a file');

4.可返回選擇的文件類型序號(hào),,并且可以設(shè)置文件多選,,設(shè)置文件多選時(shí)注意,,當(dāng)只選了一個(gè)文件時(shí),,返回的filename為字符串,,選擇多個(gè)文件時(shí),,返回的元胞類型,。

[filename, pathname, filterindex] = uigetfile( ...
 '*.mat','MAT-files (*.mat)'; ...
   '*.mdl','Models (*.mdl)'; ...
   '*.*',  'All Files (*.*)'}, ...
   'Pick a file', ...
   'MultiSelect', 'on');

5.可以設(shè)置默認(rèn)文件名

uigetfile({'*.jpg;*.tif;*.png;*.gif','All Image Files';...
          '*.*','All Files' },'mytitle',...
          'C:\Work\myfile.jpg')

更多文件對(duì)話框,可參考matlab幫助,。

 

一點(diǎn)小技巧:當(dāng)返回了一個(gè)文件的時(shí)候,,可以用fullfile將路徑和文件名組合起來,,如

[filename, pathname] = uigetfile('*.m', 'Pick an M-file');
if isequal(filename,0)
   disp('User selected Cancel')
else
   disp(['User selected', fullfile(pathname, filename)])
end

fullfile的用法如下

f = fullfile('C:', 'Applications', 'matlab', 'myfun.m')
f = C:\Applications\matlab\myfun.m

 

 

上傳一個(gè)自己編的小程序,用來實(shí)現(xiàn)圖片文件的批量縮放(幫班級(jí)上傳圖片,,但是圖片太大了,,太占空間,若一個(gè)一個(gè)縮小有太費(fèi)事,,于是就有了這個(gè)小程序,,呵呵,僅為應(yīng)用,,未考慮異常處理)

%修改圖片的大小
%%
clc
clear all
close all
%%
scale=inputdlg('縮放比(大于1為放大,,小于1為縮小)','請(qǐng)輸入縮放比',1,{'0.5'});
%%
[filename, pathname] = uigetfile( ...
    {'*.jpg;*.tif;*.png;*.gif','All Image Files';...
    '*.*','All Files' },...
    '請(qǐng)選擇要修改的圖片(可多選)', ...
    'MultiSelect', 'on');
%%
if ~iscell(filename)
    filename1{1}=filename;
else
    filename1=filename;
end
%%
for i=1:length(filename1)
    image=imread(strcat(pathname,filename1{i}));
    image_resize=imresize(image,eval_r(scale{1}));
    imwrite(image_resize,strcat(pathname,datestr(now, 'mmddHH'),filename1{i}));
end

 

其中的inputdlg函數(shù)實(shí)現(xiàn)一個(gè)要求用戶輸入信息的對(duì)話框,用法如下

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

prompt:輸入文本框的標(biāo)簽

dlg_title:對(duì)話框的標(biāo)題

num_lines:輸入文本框的行數(shù)

defAns:默認(rèn)的文本框內(nèi)容

options:一些可選的對(duì)話框選項(xiàng)

 

prompt={'Enter the matrix size for x^2:',...
        'Enter the colormap name:'};
name='Input for Peaks function';
numlines=1;
defaultanswer={'20','hsv'};

options.Resize='on';
options.WindowStyle='normal';
options.Interpreter='tex';

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

 

返回為字符串,,如果想轉(zhuǎn)化為數(shù)字,,可以是使用函數(shù)eval。

另外input函數(shù)也可以實(shí)現(xiàn)用戶信息輸入,,不過是在命令行中輸入,,也很簡單、常用,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多