// TestForOnlyC++.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"#include <fstream>
#include <iostream>
#include<list>
#include <string>
#include <sstream>
#include <vector>
#include<io.h>
using namespace std;
typedef std::vector<std::string>  StringList;
/*
分割字符串
*/
StringList splitstr(const std::string& str, char tag)
{StringList  li;std::string subStr;//遍历字符串,同时将i位置的字符放入到子串中,当遇到tag(需要切割的字符时)完成一次切割//遍历结束之后即可得到切割后的字符串数组for (size_t i = 0; i < str.length(); i++){if (tag == str[i]) //完成一次切割{if (!subStr.empty()){li.push_back(subStr);subStr.clear();}}else //将i位置的字符放入子串{subStr.push_back(str[i]);}}if (!subStr.empty()) //剩余的子串作为最后的子字符串{li.push_back(subStr);}return li;
}void getAllFiles(string path, vector<string>& files)
{//文件句柄  long   hFile = 0;//文件信息  struct _finddata_t fileinfo;  //很少用的文件信息读取结构string p;  //string类很有意思的一个赋值函数:assign(),有很多重载版本if ((hFile = _findfirst(p.assign(path).append("\\*").c_str(), &fileinfo)) != -1){do{if ((fileinfo.attrib &  _A_SUBDIR))  //判断是否为文件夹{if (strcmp(fileinfo.name, ".") != 0 && strcmp(fileinfo.name, "..") != 0){files.push_back(p.assign(path).append("/").append(fileinfo.name));//保存文件夹名字getAllFiles(p.assign(path).append("/").append(fileinfo.name), files);//递归当前文件夹}}else    //文件处理{files.push_back(p.assign(path).append("/").append(fileinfo.name));//文件名}} while (_findnext(hFile, &fileinfo) == 0);  //寻找下一个,成功返回0,否则-1_findclose(hFile);}
}
//测试
int main()
{string DATA_DIR = "D:/WWY/ForMP/imgs";vector<string> files;//测试char * DistAll = "AllFiles.txt";getAllFiles(DATA_DIR, files);//所有文件与文件夹的路径都输出//ofstream ofn(DistAll);  //输出文件流int size = files.size();int  FaiNum = 0;//ofn << size << endl;cout << size << endl;int Max = 0;int k = 0;for (int i = 0; i<size; i++){vector<string> test;//cout << k << endl;test = splitstr(files[i], '_');test[3] = test[3].substr(0, test[3].length()-4);//ofn << files[i] << endl;//cout << test[2] << endl;if (test[3].length() > Max) {Max=test[3].length();cout <<"第"<<i<<" 次"<< "max=" << Max << endl;//k++;}}//cout << "max="<<Max << endl;//ofn.close();return 0;
}

C++找文件夹中,最长的名字有多长相关推荐

  1. 如何从一个文件夹中批量读取图片名字有规则

    方法一,如名称没有规律,但格式统一,可以按照下面的方式,读取所有格式而jpg的图片的索引(为结构体),其中的name元素为图片的名称.然后你就可以按照imread去读取了. img_dir = dir ...

  2. 解放文件夹下所有层级的特定格式文件,找出文件夹内所有的txt/FLAC/MP4/MP3等等等等,并复制到另一个文件夹中

    解放文件夹下所有层级的特定格式文件,找出文件夹内所有的txt/FLAC/MP4/MP3等等等等,并复制到另一个文件夹中 引言 代码 得意 天天学习,好好向上 引言 各位朋友们好!最近遇到一些想要方便办 ...

  3. C++ 从文件夹中读取文件

    OpenCV从文件夹中读取内含文件方法 参考:http://www.2cto.com/kf/201407/316515.html http://www.it610.com/article/512614 ...

  4. 如何把游戏BGM文件夹中的.bank文件转换为.wav或者.mp3

    如何把游戏BGM文件夹中的.bank文件转换为.wav或者.mp3 百度没搜索到,自己去google了一下,找到了很好用的工具.首先感谢两位大哥,我这里只是搬运一下. 首先将bank文件提取为fab文 ...

  5. windows文件夹中的哪些文件可以删除

    经过以下的设置后,你的系统会更加清爽.简洁.高效! 1.打开"我的电脑"-"工具"-"文件夹选项"-"查看"-在&quo ...

  6. 服务器所有文件,检索服务器端文件夹中的所有文件

    我有以下C#方法,该方法检索文件夹中的所有文件,并在asp.net应用程序中使用,并通过JavaScript进行AJAX调用来调用: public string GetSoundFile(string ...

  7. 使用C语言查看一个文件夹中所有文件及目录

    1.前言 1.1声明 文章中的文字可能存在语法错语以及标点错误,请谅解: 如果在文章中发现代码错误或其它问题请告知,感谢! 2.实现方法 为了使用C语言实现查看一个文件夹中的文件数量功能,可以使用di ...

  8. 调用图片文件夹中的任意图片随机显示_他来了,他来了,Mathpix拜拜了~~~文字、表格、公式图片识别神器V0.1测试版...

    (图0) img2txt V0.8 [正式版] 第1步:win10自带截图快捷键:Win+Shift+S,也可以用QQ等截图工具: 第2步:打开软件,完成初始配置(后续调用无需再配置),按需识别: ( ...

  9. python文件移动到文件夹_python – 将文件夹中的文件移动到顶级目录

    我正在尝试为我的工作完成一个清理文件组织系统的脚本.我的脚本的最后一部分需要进入给定目录中的所有文件夹,并将每个文件夹中的所有文件移动到目录中.例如: import os path = 'C:/Use ...

最新文章

  1. python中的引用法总结_python模块调用总结
  2. vue中引入swiper
  3. 用master-worker模型比对团队管理
  4. **上海铁路局2004年最新时刻发布!**
  5. dae怎么用草图大师打开_当 to C市场饱和,该怎么用场景化打开新市场?
  6. Redis应用案例 查找某个值的范围
  7. 你活了多久----快用Python计算一下日期
  8. vue 图片被背景色覆盖_如何使用纯css3打造有点意思的故障艺术(附React/Vue加强组件版)...
  9. 【Vue2.0】— 插件(十六)
  10. 关于线程堆栈大小的注意事项-转
  11. 单例模式中的饿汉模式
  12. 《Python游戏编程快速上手》一第1章 安装Python
  13. HashSet、LinkedHashSet、TreeSet的内部实现简介
  14. JAVA 前端上传文件,后端解析文件流并写入数据库
  15. 微信小程序实践——实验1获取用户信息
  16. dos版电影 (telnet towel.blinkenlights.nl的奇迹!!)-STAR WARS in ARCII
  17. 小组项目--闲置物品交换系统-第一周
  18. 佐治亚理工计算机科学,佐治亚理工学院计算机科学面试经验汇总
  19. CAIDA AS Rank项目介绍
  20. java 对接微信公众号(一)获取token

热门文章

  1. html滚动字幕图片,网页HTML代码滚动文字制作
  2. 夏目友人帐之撸猫动作倒放
  3. OS X Mountain Lion高手进阶
  4. 20多个可以提高你安卓开发技能的开源app
  5. 用python画星空图教程水粉_怎样用水粉颜料画星空
  6. 关于Xftp7的下载和安装
  7. html使用本地字体/自定义字体 字体转换成@font-face所需的web字体格式
  8. 你总是喜欢抓不住的东西
  9. 通俗易通解释SLAM问题的数学描述:运动方程和观测方程
  10. Linux文件查找和文件内容关键字查找