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),将大于某值的图片进行压 ...
随机推荐
- luogu2375 动物园 (kmp)
首先求出fail数组,如果没有不重叠的限制的话,我们可以在求fail的时候递推出个数cnt[i]=cnt[fail[i]]+1(这个cnt是算上自己本身==自己本身的) 然后如果是要求不重叠的话,就是 ...
- 【codevs1959】拔河比赛
题目大意:给定一个有 N 个数的集合,将这 N 个数均分成两堆,求差值最小是多少. 题解:有关集合选数的问题,应该是背包问题,同时要求均分可知,选出的物品数目也应该是背包费用的一个维度,因此这是一个多 ...
- Excel:公式中的这些特殊数字
19E+307 9E+307是科学计数法表示的一个数字,就简单理解成是Excel支持的一个很大的数字就可以了. 用法示例: =LOOKUP(9E+307,A:A) 根据LOOKUP函数的性质,提取A列 ...
- python---django中models配置修改数据库引擎
Django支持多种数据库,sqlite,mysql,oracle等,其默认数据库是sqlite 在settings文件中可以发现: DATABASES = { 'default': { 'ENGIN ...
- Jsp使用遍历List集合
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...
- bzoj千题计划203:bzoj3994: [SDOI2015]约数个数和
http://www.lydsy.com/JudgeOnline/problem.php?id=3994 设d(x)为x的约数个数,给定N.M,求 用到的一个结论: 证明: 枚举n的约数i,枚举m的约 ...
- bzoj千题计划179:bzoj1237: [SCOI2008]配对
http://www.lydsy.com/JudgeOnline/problem.php?id=1237 如果没有相同的数不能配对的限制 那就是排好序后 Σ abs(ai-bi) 相同的数不能配对 交 ...
- 使用JWPL (Java Wikipedia Library)操作维基百科数据
使用JWPL (Java Wikipedia Library)操作维基百科数据 1. JWPL介绍 JWPL(Java Wikipedia Library)是一个开源的访问wikipeida数据的Ja ...
- 基于canvas将图片转化成字符画
字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢?HTML5让这个可能变成了现实,通过canvas,可以很轻松实现这个功能.其实原理很简单:扫描图片相应位置的像素点,再计算出其灰度值,根 ...
- JavaScript继承详解(一)
面向对象与基于对象 几乎每个开发人员都有面向对象语言(比如C++.C#.Java)的开发经验. 在传统面向对象的语言中,有两个非常重要的概念 - 类和实例. 类定义了一类事物公共的行为和方法:而实例则 ...