MATLAB检查指定路径中的子文件夹中的文件名中是否带有空格
测试文件夹为:



clear;close all;clc;
%%
%程序实现的功能
%检查指定路径中的子文件夹中的文件名中是否带有空格,并去掉文件名中的空格
%%
%程序中用到的之前不清楚的函数如下
%)strfind(a,b):即找a中是否有b,如果a中有b,则输出b的位置序号。没有输出空数组
%)isempty(a):判断数组是否为空
%)strrep(a,b,c):就是把a中所有出现的b换为c
%)movefile(a,b):a移动为b,如C:\test1.jpg移动为C\test2.bmp
%%
tic;
disp('程序开始执行');
%%%%%%需要更改的参数(即文件夹路径)%%%%%%%%%%%%%%%%%%%%%%%%%% path='C:\Users\yangsu\Desktop\test2'; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
count=;%用于统计总共找到几个文件名错误的文件
dirList=dir(path);%读取文件夹列表,这种方式读取会保留原文件.(在结构体中第一个)和上一层目录..(在结构体第二个)
countList=length(dirList);%文件夹个数
fid = fopen([path,'\','errorlist.txt'], 'w');%打开数据文件夹时,对应的错误文件名输出列表
for numList=:countList%文件夹从3开始
% if(length(dirList(numList).name)>=)%根据这个过滤掉在此文件夹可能存在的txt文件
% continue;
% end
fileName=dir([path,'\',dirList(numList).name]);%读取子文件夹
fileSum=length(fileName);%统计子文件夹中的文件个数
disp(['开始搜索文件夹',dirList(numList).name]);
for fileNum=:fileSum%文件从3开始
judge=strfind(fileName(fileNum).name,' ');
if isempty(judge)
continue;
else
fprintf(fid,'%s', '找到的含有空格的文件为:');
fprintf(fid,'%s', [dirList(numList).name,'/',fileName(fileNum).name]);%输入:子文件/图片名称
fprintf(fid,'\n');%换行
count=count+;
disp(['找到一个带有空格的文件,文件完整路径为',' ',dirList(numList).name,'/',fileName(fileNum).name]);
%后来想到添加的功能找到了带有空格的文件,把这个文件的文件名中的空格去掉作为一个新的文件名保存
newFileName=strrep(fileName(fileNum).name,' ','');
fprintf(fid,'%s', '修改后的文件为:');
fprintf(fid,'%s', [dirList(numList).name,'/',newFileName]);%输入:子文件/图片名称
fprintf(fid,'\n');%换行
fprintf(fid,'\n');%换行
fulloriginalname=[path,'\',dirList(numList).name,'\',fileName(fileNum).name];
fullchangename=[path,'\',dirList(numList).name,'\',newFileName];
movefile(fulloriginalname,fullchangename);
disp(['去除文件名中的空格后,文件完整路径为',' ',dirList(numList).name,'/',newFileName]);
disp(' ');
end
end
end
fclose(fid);%关闭文本文件
fclose('all');%关闭所有连接,防止没关掉的情况
disp(['程序执行完毕','总共找到',' ',num2str(count),' ','个文件名中带有空格的文件']);
toc;
matlab输出窗口:

并生成一个errorlist.txt,记录修改信息。
修改后原来含有空格的文件名没有空格了。
MATLAB检查指定路径中的子文件夹中的文件名中是否带有空格的更多相关文章
- Linux C 读取文件夹下所有文件(包括子文件夹)的文件名【转】
转自:https://www.cnblogs.com/xudong-bupt/p/3504442.html 本文:http://www.cnblogs.com/xudong-bupt/p/350444 ...
- Android中读取assets文件夹中的子文件夹内容
文件结构如下:assets/info/info AssetManager am = this.getResources().getAssets(); InputStream input = null; ...
- Java中新建子文件夹和新建文件
File file = new File("地址"); file.mkdirs(); //新建文件夹,当没有父文件夹时,但是不会自动创建父文件夹 file.mkdirs(); // ...
- ci 3.0 默认路由放在子文件夹 无法访问的解决办法
比方说你想配置默认路由为: $route['default_controller'] = 'index/home'; ci3.0之前是可以放在 controllers中的子文件夹中的,但是到了ci ...
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合
package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import ...
- Java 遍历指定文件夹及子文件夹下的文件
Java 遍历指定文件夹及子文件夹下的文件 /** * 遍历指定文件夹及子文件夹下的文件 * * @author testcs_dn * @date 2014年12月12日下午2:33:49 * @p ...
- Matlab批量获取子文件夹与文件名
批量得到父文件夹下所有子文件夹的路径的MATLAB函数. function [SubFolders] = GetFolders(ParentFolder) %GetFolders % 函数功能为获取父 ...
- Android程序函数 将assets文件夹下的文件复制到手机的sd卡中(包括子文件夹)
最近在做个功能是将asset文件夹下的所有文件(包括子文件)全部拷贝出来到指定目录下.所用的方法无非是用AssetManager.但是这里 有个问题是也要讲子文件夹和子文件都要拷贝出来.到网上Goog ...
- shell 批量压缩指定文件夹及子文件夹内图片
shell 批量压缩指定文件夹及子文件夹内图片 用户上传的图片,一般都没有经过压缩,造成空间浪费.因此须要编写一个程序,查找文件夹及子文件夹的图片文件(jpg,gif,png),将大于某值的图片进行压 ...
随机推荐
- maven 整合支付宝,导入alipay-sdk-java包到本地仓库
maven 整合支付宝,导入alipay-sdk-java包到本地仓库 1.环境变量添加: MAVEN_HOME:(maven位置) M2_HOME:(maven位置) PATH:%M2_HOME ...
- python学习(26)分析ajax请求抓取今日头条cosplay小姐姐图片
分析ajax请求格式,模拟发送http请求,从而获取网页代码,进而分析取出需要的数据和图片.这里分析ajax请求,获取cosplay美女图片. 登陆今日头条,点击搜索,输入cosplay 下面查看浏览 ...
- CSS 设置网页中选中文字的背景色
在样式文件中增加如下代码: ::selection { background: hsla(5, 92%, 76%, 0.8); color: #fff;}
- 分布式锁--Redis小试牛刀
参考文章: Redis分布式锁的正确实现方式 分布式锁看这篇就够了 在这两篇文章的指引下亲测 Redis分布式锁 引言 分布式系统一定会存在CAP权衡问题,所以才会出现分布式锁 什么是CAP理论? 为 ...
- 何凯文每日一句打卡||DAY5
- CSSOM
概要 狭义的 DOM API 仅仅包含 DOM 树形结构相关的内容. DOM 中的所有的属性都是用来表现语义的属性,CSSOM 的则都是表现的属性. CSSOM 是 CSS 的对象模型,在 W3C 标 ...
- 概率dp(A - Scout YYF I POJ - 3744 )
题目链接:https://cn.vjudge.net/contest/276241#problem/A 题目大意:首先输入n和p,n代表地雷的个数,p代表走一步的概率,1-p代表走两步的概率,然后问你 ...
- 一个完整的Installshield安装程序实例-转
一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品(一)---基本设置一 前言 Installshield可以说是最好的做安装程序的商业软件之一,不过因为功能的太过于强大,以至于 ...
- mysql5.7 主从复制的正常切换【转】
目前环境如下: master server IP:172.17.61.131 slave server IP:172.17.61.132 mysql version: mysql-5.7.21-lin ...
- eclipse安装阿里巴巴java开发规范插件
阿里巴巴java开发规范插件 作为JAVA开发人员,始终没有一个明确的规范,何为好代码,何为坏代码,造成不同人的代码风格不同,接手别人代码后改造起来相当困难.前不久,阿里巴巴发布了<阿里巴巴Ja ...