필터 지우기
필터 지우기

adding apostrophe for reading a folder name

조회 수: 7 (최근 30일)
Raady
Raady 2017년 4월 18일
댓글: Jan 2017년 4월 18일
I am trying to files in that directory which have folder name as "6 'o' clock".
filefolder = fullfile(dataset_folder,'6 ''o'' clock');
load(fullfile(filefolder,'234.mat');
it gives me this error:
Error using load
Unable to read file 'E:\Data_Sets\Fault\Outer\6 'o' clock\234.mat': no such file or directory.
I am able to read the folders which doesnt have the apostrophe, but not with the apostrophe. how to do it My path in windows is
E:\Data_Sets\Fault\Outer\6 'o' clock\
and i have files from 190.mat to 290.mat in this folder
  댓글 수: 6
Stephen23
Stephen23 2017년 4월 18일
편집: Stephen23 2017년 4월 18일
Okay, what are the exact outputs of these commands:
dir E:\Data_Sets\Fault\Outer\
exist('E:\Data_Sets\Fault\Outer','dir')
exist('E:\Data_Sets\Fault\Outer\6 ''o'' clock','dir')
Jan
Jan 2017년 4월 18일
@Raady: Do you understand, what we are asking for? We assume, that your folder is not called "6 'o' clock", but that there are some unexpected characters in the name. Perhaps these are different quotes like ´ or `, or the spaces are not spaces, but invisible non-printable characters. Running my code would reveal this.

댓글을 달려면 로그인하십시오.

답변 (2개)

Jan
Jan 2017년 4월 18일
Check the name twice. Are there any unicode characters in the name?
FileList = dir('E:\Data_Sets\Fault\Outer\6*');
Name = {FileList.name};
for iName = 1:numel(Name)
fprintf('\n%s\n', Name{iName});
fprintf('%d ', double(Name{iName}));
end

Image Analyst
Image Analyst 2017년 4월 18일
Try this:
quote = 39; % ASCII value for a single quote.
subFolder = sprintf('6 %co%c clock', quote, quote) % Create string: 6 'o' clock
fileFolder = fullfile(dataset_folder, subFolder) % Prepend another folder.
fullFileName = fullfile(fileFolder, '234.mat') % Construct the full file name of the mat file.
% Try to load the file. Warn if it does not exist.
if exist(fullFileName, 'file')
load(fullFileName);
else
errorMessage = sprintf('Error: File not found:\n%s', fullFileName);
uiwait(errordlg(errorMessage));
end

카테고리

Help CenterFile Exchange에서 파일 작업에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!