1

我正在使用 uigetfile 上传我的数据。我已经用日期标记了我的数据。所以我要上传的文件看起来像 Data-Dec01_11/45/35.txt 问题是 uigetfile 读取到第一个“/”,然后假定这是文件名的结尾。因此它提取文件名Data-Dec01_11。但是当然,当我加载该文件时,它不存在。如何强制 uigetfile 提取整个文件名?

4

1 回答 1

4

您不能在文件名中使用斜杠或反斜杠,因为它们可能会与文件分隔符混淆,就像您的情况一样。

您可以使用“regexpr”重命名文件,使其不包含非法字符,如本 trhead 中所述

为了您的方便,我在这里复制了他们建议的代码(我刚刚在示例字符串中添加了一个斜杠和一个反斜杠,以便您查看结果):

% these characters are allowed
  legalchars = 'a-zA-Z0-9\-\ \_\.' ;
% illegal filename
  A = 'Some@charac\ters$are(not&allowed/.txt'
% replace every other character with an underscore
  B = regexprep(A,['[^' legalchars ']'],'_')
于 2013-01-17T16:20:54.740 回答