首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MATLAB中将常用字符串保存到新文本文件中

在MATLAB中将常用字符串保存到新文本文件中
EN

Stack Overflow用户
提问于 2013-08-27 02:43:08
回答 1查看 61关注 0票数 0

为了在不同的文本文件中获得相似的文件,我使用了ismember()

代码语言:javascript
复制
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包含

代码语言:javascript
复制
'DSC01605.bmp'
'Hampi8.bmp'

如何将这些文件写入新的文本文件all.txt?我的需求的问题是-假设allMatchingStrings包含大约10个文件,但我只需要这10个文件中的5个。我需要将5个文件保存到一个新的文本文件中,比如all.txt。我该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2013-08-27 05:21:44

将它们写入磁盘的一种快捷方法是使用fprintf命令。

代码语言:javascript
复制
fid = fopen('all.txt', 'w');
fprintf(fid, '%s\n', allMatchingStrings{:});
fclose(fid);

如果你只想在allMatchingStrings中写前两个文件名,那么你可以这样限制:

代码语言:javascript
复制
filenamesIWant = 1:2;
fid = fopen('all2.txt', 'w');
fprintf(fid, '%s\n', allMatchingStrings{filenamesIWant});
fclose(fid);

这之所以有效,是因为fprintf命令会对您提供的每个字符串重复执行。唯一的诀窍就是把大括号放在正确的位置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18450839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档