博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++如何批量修改文件后缀名
阅读量:2054 次
发布时间:2019-04-28

本文共 1250 字,大约阅读时间需要 4 分钟。

1、问题描述
在日常的应用中,很多时候会用到批量修改图片的后缀名。比如将1.bmp修改为1.jpg。或许我们用格式工厂或者批处理文件.bat课以轻而易举的做到。这里暂不讨论。本篇文章仅仅对如何用c++做图片批处理修改后缀名做一些说明。
2、c++程序
程序思路:先获取到文件夹下所有文件的名字,然后,用newname取代原来的oldname。

#include "stdafx.h"#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;void getFilesAll( string path, vector
& files){ //获取文件夹下面的所有文件名字 //文件句柄 long hFile = 0; //文件信息 struct _finddata_t fileinfo; string p; 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) { getFilesAll( p.assign(path).append("\\").append(fileinfo.name) , files ); } } else { files.push_back(p.assign(path).append("\\").append(fileinfo.name) ); } }while(_findnext(hFile, &fileinfo) == 0); _findclose(hFile); } }void postfix(){ char *filePath="G:\\image\\"; char strname[60]; vector
filesa; getFilesAll(filePath ,filesa ); for(unsigned int i=0 ; i

3、效果图展示
(1)执行程序前状态如图1所示
图1:程序执行前状态

图1 执行程序前状态

(2)执行程序后状态如图2所示

图2:程序执行后状态

图2 执行程序后状态
(3)
程序执行结果如图3所示
图3:程序执行结果展示
图3 程序执行结果
4、总结
这个写的一般,但是也算是勉强能解决问题。希望能够对别人有借鉴或者帮助。
5、参考文献
6、祝愿
不忘初心,方得始终。2016年,各位朋友新年快乐!

你可能感兴趣的文章
Linux Capabilities 入门:让普通进程获得 root 的洪荒之力
查看>>
为什么我会了SOA,你们还要逼我学微服务?
查看>>
Linux Capabilities 入门:如何管理文件的 capabilities?
查看>>
Linux Capabilities 入门教程:基础实战篇
查看>>
如何向纯洁的女朋友解释并发与并行的区别?
查看>>
一名云原生搬砖师的自白
查看>>
红帽宣布发布企业容器仓库开源项目 Quay
查看>>
跨平台构建 Docker 镜像新姿势,x86、arm 一把梭
查看>>
k8s v1.17 新特性预告: 拓扑感知服务路由
查看>>
彻底理解矩阵乘法
查看>>
使用 buildx 构建多平台 Docker 镜像
查看>>
Kubelet 中的 “PLEG is not healthy” 到底是个什么鬼?
查看>>
不懂OpenShift,不足以谈云计算!
查看>>
别让自己“墙”了自己
查看>>
让你的网站用上炫酷的中文字体
查看>>
使用 font-spider 对 webfont 网页字体进行压缩
查看>>
云原生服务网格 Istio 1.4 部署指南
查看>>
让 Linux 防火墙新秀 nftables 为你的 VPS 保驾护航
查看>>
Istio 1.4 部署指南
查看>>
贫苦家庭用户的 Envoy xDS 控制平面
查看>>