最近接到一个小任务,需要对150人的文档进行分类汇总,每个人有两个文件。最终需要将每个人的两个文件新建一个文件夹进行单独存放。就尝试用C++代码批量处理了一波,记录如下:
一、问题分析:
1、由于每个文件是每个学生提交,因此最终的文档呈现各种不规范的命名方式。
2、有的学生存在学号写错的情况。
二、解决想法及流程:
1、批量修改文件名,统一化命名方式;
2、程序自动检查同一个人的两个文件名中的学号是否一致,抛出信息,手动核查;
3、自动新建个人文件夹,并将个人的两个文件移动到该文件下;
4、反向校验,将归档的个人信息打印,并在EXCEL中与信息汇总表进行差错比较;
三、代码部分
1、批量修改文件名:
#include <iostream>
#include <io.h>
#include <string>
#include <vector>
using namespace std;
void getFiles(const std::string & path, std::vector<std::string> & files)
{
//文件句柄
intptr_t hFile = 0;
//文件信息,_finddata_t需要io.h头文件
struct _finddata_t fileinfo;
std::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)
getFiles(p.assign(path).append("\\").append(fileinfo.name), files);
}
else
{
files.push_back(fileinfo.name);
}
} while (_findnext(hFile, &fileinfo) ==

使用C++实现对150人提交的文档进行批量重命名、信息一致性检查及分类归档,通过文件名解析学号和姓名,确保同一人文件学号一致,并自动创建个人文件夹进行归档。
最低0.47元/天 解锁文章
1747

被折叠的 条评论
为什么被折叠?



