在MatLab中(我得到版本2014b,但我可以很容易地更新到2015 ..)你得到函数dir(PATH)
,从中你可以接收目录的内容作为结构。从MatLab中的目录中排序结构
现在我的问题是,结构中的条目不按文件名排序。 在我的程序中,我让用户选择一个文件uigetFile
,文件按名称排序(由OS完成)。因此,用户可能会选择对话框中的第一个文件,但不是fileList
中的第一个文件。
所以我的问题是,uigetfile
对话中的文件种类不同,功能dir
返回。
如何才能实现结构排序或打开对话框中的文件排序如从dir
收到的结构?
这里是我的目录结构中fileList
:
'.' '22-Sep-2015 09:38:42' 0 true 736229,401875000
'..' '17-Sep-2015 15:23:37' 0 true 736224,641400463
'JV_1914_0001.tif' '21-Sep-2015 09:58:39' 720932 false 736228,415729167
'JV_1914_0003.tif' '06-Mrz-2011 18:49:36' 29844547 false 734568,784444445
'JV_1914_0004.tif' '06-Mrz-2011 18:49:44' 30382304 false 734568,784537037
'JV_1914_0005.tif' '06-Mrz-2011 18:49:50' 30389081 false 734568,784606481
'JV_1914_0006.tif' '06-Mrz-2011 18:49:58' 30436100 false 734568,784699074
'JV_1914_0007.tif' '06-Mrz-2011 18:50:06' 30442889 false 734568,784791667
'JV_1914_0008.tif' '06-Mrz-2011 18:50:14' 31125589 false 734568,784884259
'JV_1914_0009.tif' '06-Mrz-2011 18:50:22' 31132367 false 734568,784976852
'JV_1914_0010.tif' '06-Mrz-2011 18:50:30' 31080335 false 734568,785069444
'JV_1914_0011.tif' '06-Mrz-2011 18:50:36' 31087112 false 734568,785138889
'JV_1914_0012.tif' '06-Mrz-2011 18:50:44' 30237671 false 734568,785231482
'JV_1914_0013.tif' '06-Mrz-2011 18:50:52' 30244449 false 734568,785324074
'JV_1914_0014.tif' '06-Mrz-2011 18:51:00' 30282806 false 734568,785416667
'JV_1914_0015.tif' '06-Mrz-2011 18:51:08' 30289585 false 734568,785509259
'JV_1914_0016.tif' '06-Mrz-2011 18:51:16' 30294053 false 734568,785601852
'JV_1914_0017.tif' '06-Mrz-2011 18:51:24' 30300833 false 734568,785694444
'JV_1914_0018.tif' '06-Mrz-2011 18:51:32' 30300833 false 734568,785787037
'ccc.tif' '08-Sep-2015 21:28:44' 23332298 false 736215,894953704
和你看到的是文件ccc.tif
在列表的末尾,而其在uigetfile
放在首位对话(按名称排序 - 我想这可能是OS专用)
我从来没有注意过'files = dir('* .txt'); files.name'不能按文件名排序。你有没有例子? – IKavanagh
@IKavanagh我在上面编辑过我的帖子,现在你可以看到从'dir'收到的结构和从对话开始的截图。 –
我刚刚添加了一个文件'JV_1914_0013.1.tif',这是在列表中的正确位置oO –