C/C++操作文件

2023-10-27

1.C++给字符数组内文件名排序

假设我们获得到的文件名列表是一个二维字符数组,给这样的数据排序首先要获得排序所需的关键字,如下:

void getNum(char dstChar[], int* num)
{   
    //首先要知道字符串长啥样,用字符串中的哪几个位置的数做排序依据
	string strname = dstChar;   // "./yitu_300/0025.jpeg"
	string numname = strname.substr(11, 4);  //取字符串的11位开始,取4个字符
	*num = stoi(numname);      //*num=25
}
void Bobsort(char (*image_filename_list)[256], int image_number)
{
	for (int i = 0; i < image_number; i++)
	{
		for (int j = 0; j < image_number - i-1; j++)
		{
			int numj, numj1;
			getNum(image_filename_list[j], &numj);
			getNum(image_filename_list[j+1], &numj1);//这里排序就是按照刚刚取出的数据做判断依据
			if (numj > numj1)
			{
				char tmp[256] = { 0 };
				strcpy(tmp, image_filename_list[j + 1]);
				strcpy(image_filename_list[j + 1], image_filename_list[j]);
				strcpy(image_filename_list[j], tmp);
			}
		}
	}
}
void SortCharAry()
{
	char filename[][256] = { "./ddddd_300/0025.jpeg", "./dddd_300/0064.jpeg", "./dddd_300/0002.jpeg" };
	Bobsort(filename, 3);
	for (int i = 0; i < 3; i++)
	{
		printf("%s\n", filename[i]);
	}

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C/C++操作文件 的相关文章

  • 如何使 Windows 窗体的关闭按钮不关闭窗体但使其不可见?

    该表单有一个 NotifyIcon 对象 当用户单击 关闭 按钮时 我希望表单不关闭而是变得不可见 然后 如果用户想再次查看该表单 可以双击系统托盘中的图标 如果用户想关闭表单 可以右键单击该图标并选择 关闭 有人可以告诉我如何使关闭按钮不
  • 如何验证文件名称在 Windows 中是否有效?

    是否有一个 Windows API 函数可以将字符串值传递给该函数 该函数将返回一个指示文件名是否有效的值 我需要验证文件名是否有效 并且我正在寻找一种简单的方法来完成此操作 而无需重新发明轮子 我正在直接使用 C 但针对的是 Win32
  • 访问私人成员[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 通过将类的私有成员转换为 void 指针 然后转换为结构来访问类的私有成员是否合适 我认为我无权修改包含我需要访问的数据成员的类 如果不道德 我
  • ASP.NET Core Serilog 未将属性推送到其自定义列

    我有这个设置appsettings json对于我的 Serilog 安装 Serilog MinimumLevel Information Enrich LogUserName Override Microsoft Critical Wr
  • 当 contains() 工作正常时,xpath 函数ends-with() 工作时出现问题

    我正在尝试获取具有以特定 id 结尾的属性的标签 like span 我想获取 id 以 国家 地区 结尾的跨度我尝试以下xpath span ends with id Country 但我得到以下异常 需要命名空间管理器或 XsltCon
  • WPF 中的调度程序和异步等待

    我正在尝试学习 WPF C 中的异步编程 但我陷入了异步编程和使用调度程序的困境 它们是不同的还是在相同的场景中使用 我愿意简短地回答这个问题 以免含糊不清 因为我知道我混淆了 WPF 中的概念和函数 但还不足以在功能上正确使用它 我在这里
  • 为什么#pragma optimize("", off)

    我正在审查一个 C MFC 项目 在某些文件的开头有这样一行 pragma optimize off 我知道这会关闭所有以下功能的优化 但这样做的动机通常是什么 我专门使用它来在一组特定代码中获得更好的调试信息 并在优化的情况下编译应用程序
  • C - 找到极限之间的所有友好数字

    首先是定义 一对友好的数字由两个不同的整数组成 其中 第一个整数的除数之和等于第二个整数 并且 第二个整数的除数之和等于第一个整数 完美数是等于其自身约数之和的数 我想做的是制作一个程序 询问用户一个下限和一个上限 然后向他 她提供这两个限
  • 如何将图像和 POST 数据上传到 Azure 移动服务 ApiController 终结点?

    我正在尝试上传图片and POST表单数据 尽管理想情况下我希望它是json 到我的端点Azure 移动服务应用 我有ApiController method HttpPost Route api upload databaseId sea
  • C 预处理器库

    我的任务是开发源分析工具C程序 并且我需要在分析本身之前预处理代码 我想知道什么是最好的图书馆 我需要一些重量轻 便于携带的东西 与其推出自己的 为什么不使用cpp这是的一部分gcc suite http gcc gnu org onlin
  • 使用 System.Text.Json 即时格式化 JSON 流

    我有一个未缩进的 Json 字符串 例如 hash 123 id 456 我想缩进字符串并将其序列化为 JSON 文件 天真地 我可以使用缩进字符串Newtonsoft如下 using Newtonsoft Json Linq JToken
  • 如何将图像路径保存到Live Tile的WP8本地文件夹

    我正在更新我的 Windows Phone 应用程序以使用新的 WP8 文件存储 API 本地文件夹 而不是 WP7 API 隔离存储文件 旧的工作方法 这是我如何成功地将图像保存到 共享 ShellContent文件夹使用隔离存储文件方法
  • Github Action 在运行可执行文件时卡住

    我正在尝试设置运行google tests on a C repository using Github Actions正在运行的Windows Latest 构建过程完成 但是当运行测试时 它被卡住并且不执行从生成的可执行文件Visual
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • C++ fmt 库,仅使用格式说明符格式化单个参数

    使用 C fmt 库 并给定一个裸格式说明符 有没有办法使用它来格式化单个参数 example std string str magic format 2f 1 23 current method template
  • 控制到达非 void 函数末尾 -wreturn-type

    这是查找四个数字中的最大值的代码 include
  • 为什么 C# Math.Ceiling 向下舍入?

    我今天过得很艰难 但有些事情不太对劲 在我的 C 代码中 我有这样的内容 Math Ceiling decimal this TotalRecordCount this PageSize Where int TotalRecordCount
  • Process.Start 阻塞

    我正在调用 Process Start 但它会阻止当前线程 pInfo new ProcessStartInfo C Windows notepad exe Start process mProcess new Process mProce
  • 如何使用 std::string 将所有出现的一个字符替换为两个字符?

    有没有一种简单的方法来替换所有出现的 in a std string with 转义 a 中的所有斜杠std string 完成此操作的最简单方法可能是boost字符串算法库 http www boost org doc libs 1 46
  • 防止索引超出范围错误

    我想编写对某些条件的检查 而不必使用 try catch 并且我想避免出现 Index Out of Range 错误的可能性 if array Element 0 Object Length gt 0 array Element 1 Ob

随机推荐

  • Qt(c++)调用海康威视监控摄像头

    文章目录 一 海康威视监控摄像头开发SDK介绍 二 海康SDK模块说明 三 Qt项目中海康威视SDK配置 四 实时预览摄像头图像程序 一 海康威视监控摄像头开发SDK介绍 设备网络SDK是基于设备私有网络通信协议开发的 为嵌入式网络硬盘录像
  • 探究软件测试人员的进阶之路

    一谈到进阶 大部分文章 包括前面一些文章也会写到职级如何从初级 中级 高级 一直进阶到专家级 然后写上每个级别所需要的知识技能 然而 我们掌握了这些所谓初 中 高的知识和技能 真的就能成为测试专家了吗 对于这个问题 大部分人应该都带着疑惑或
  • qt导入html css样式表,第45篇 进阶(五)Qt样式表

    第45篇 进阶 五 Qt样式表 导语 一个完善的应用程序不仅应该有实用的功能 还要有一个漂亮的外观 这样才能使应用程序更加友善 更加吸引用户 作为一个跨平台的UI开发框架 Qt提供了强大而灵活的界面外观设计机制 Qt样式表是一个可以自定义部
  • 分数阶导数的意义_导数的意义

    分数阶导数的意义 钙衍生物 CALCULUS DERIVATIVES After derivative theory posts we will start to see some of the applications that make
  • 私人用的红帽linux,红帽宣布为个人开发者提供16个RHEL免费许可 支持在生产环境中使用...

    自从红帽宣布结束CentOS操作系统后就引起很多争议 按红帽计划CentOS 8将是最后的版本并且会在年底停更 这使得很多依赖该操作系统的个人和企业无比愤怒 因为这突如其来的变更将会导致大量生产环境需要更换系统 现在红帽为平息用户愤怒正在扩
  • 双极性SPWM波生成

    本篇文章主要介绍用于逆变电路的双极性SPWM波生成 SPWM波就是脉冲宽度按正弦规律变化和正弦波等效的PWM波形 用于控制逆变电路中开关器件的通断 使其输出的脉冲电压的面积与所希望输出的正弦波在相应区间内的面积相等 经滤波后可以得到正弦波输
  • @Transactional事务中发送MQ消息,事务还未完成但是消息已经发送

    Transactional事务中发送MQ消息 事务还未完成但是消息已经发送 这种情况会导致一些问题 1 事务还未提交 但是消息已经发送 这个时候消息中的一些信息提供给别人调用 但是别人调用并没有在数据库找到该记录 因为事务还未提交 2 事务
  • 多线程面试题

    目录 1 僵尸进程和孤儿进程 1 1 孤儿进程定义 1 2 僵尸进程定义 1 2 怎样来清除僵尸进程 1 kill杀死元凶父进程 一般不用 2 父进程用wait或waitpid去回收资源 方案不好 3 通过信号机制 在处理函数中调用wait
  • 8种方案,保证缓存和数据库的最终一致性

    订阅专栏 前言 我们通常使用缓存机制来提升系统的性能 缓存系统下的读写操作 一般都需要操作数据库与缓存 对于读操作 一般是先查询缓存 查询不到再查询数据库 最后回写进缓存 而对于写操作 究竟是先删除 更新 缓存 再更新数据库 还是先更新数据
  • open build service打包deb,并浅谈一点

    详细打包步骤注意 https zh opensuse org openSUSE Build Service Debian builds 认识 浅谈如何认识open build service的 最近在研究软件打包分发和发布的相关知识 发现了
  • CSS 预处理工具 Less 的介绍及使用 步骤

    文章目录 Less是什么 Less的使用方法 Less 中的注释 Less 中的变量 Less 中的嵌套 Less 中的混合 Mixin Less 中的运算 Less 中的转译 Less 中的作用域 Less 中的导入 Less实用实例 文
  • zipkin接入mysql【windows】

    java jar zipkin jar 这种方式启动数据是保存在内存中的 下面我们配置一下将数据保存到mysql中 创建数据库 CREATE DATABASE zipkin 创建表结构 表结构内容参考以下连接 https github co
  • STM32CubeIDE设置Flash烧录地址和大小(告别Keil魔术棒)

    STM32CubeIDE中设置Flash烧写地址和范围 在由Keil平台转到STM32CubeIDE平台过程中 我们熟悉的点开魔术棒进行相关烧录配置的方式已经不适用了 在STM32CubeIDE平台中我们需要通过修改文件的方式来实现 稍显麻
  • sublime text3 python 代码提示_Sublime Text3+Anaconda插件实现智能提示python IDE

    导读 前言上期给你们介绍装Sublime Text3和Python环境 可以编写简单的python类库sublime text3 python 可是却不能像其它IDE一样智能提醒 这样用这个意义也就不大了 今天就给你们推荐python智能提
  • jeecg boot笔记(一)-使用模糊查询

    1 引入 JInput import JInput from components jeecg JInput vue 2 使用
  • NOIP2004 火星人(全排列)

    题目来源 http acm wust edu cn problem php id 1074 soj 0 题目描述 火星人共有N个手指 每个手指分别代表着1 N共N个数 可以通过改变这个这N个手指的顺序来改变值的大小 但是人类想要和火星人交流
  • docker安装 镜像检索、本地下载上传、重命名

    安装docker wget https mirrors aliyun com docker ce linux centos docker ce repo O etc yum repos d docker ce repo yum y inst
  • 基于GPRS的无线视频监控系统

    1 引言 目前 远程视频监控系统已经广泛应用于工矿企业生产现场监控 电信机房监控 城市交通管理等领域 常见的远程视频监控系统大多是通过架设专用的有线媒介 或者租用电信运营商的通信线路传输视频信号 前者工程工期长 前期投入比较大 传输距离有限
  • 学生成绩管理系统

    一个年级 相当链表A 该年级5个班 每个班5个人 相当于链表B1 B5 做一个学生成绩管理系统 include
  • C/C++操作文件

    1 C 给字符数组内文件名排序 假设我们获得到的文件名列表是一个二维字符数组 给这样的数据排序首先要获得排序所需的关键字 如下 void getNum char dstChar int num 首先要知道字符串长啥样 用字符串中的哪几个位置