为了在不同的文本文件中获得相似的文件,我使用了ismember()
file1 = {'DSC01605.bmp';'Hampi8.bmp';'DSC01633.bmp';...
'DSC01198.bmp';'DSC01619.bmp'}
file2 = {'DSC01605.bmp';'Hampi8.bmp';'DSC01633.bmp'}
file3 = {'DSC01605.bmp';'Hampi8.bmp'}
matching12 = ismember(file1, file2)
matching13 = ismember(file1, file3)
matchesAll3 = matching12 & matching13
allMatchingStrings = file1(matchesAll3)现在allMatchingStrings包含
'DSC01605.bmp'
'Hampi8.bmp'如何将这些文件写入新的文本文件all.txt?我的需求的问题是-假设allMatchingStrings包含大约10个文件,但我只需要这10个文件中的5个。我需要将5个文件保存到一个新的文本文件中,比如all.txt。我该怎么做呢?
发布于 2013-08-27 05:21:44
将它们写入磁盘的一种快捷方法是使用fprintf命令。
fid = fopen('all.txt', 'w');
fprintf(fid, '%s\n', allMatchingStrings{:});
fclose(fid);如果你只想在allMatchingStrings中写前两个文件名,那么你可以这样限制:
filenamesIWant = 1:2;
fid = fopen('all2.txt', 'w');
fprintf(fid, '%s\n', allMatchingStrings{filenamesIWant});
fclose(fid);这之所以有效,是因为fprintf命令会对您提供的每个字符串重复执行。唯一的诀窍就是把大括号放在正确的位置。
https://stackoverflow.com/questions/18450839
复制相似问题