`
hulianwang2014
  • 浏览: 693341 次
文章分类
社区版块
存档分类
最新评论
  • bcworld: 排版成这样,一点看的欲望都没有了
    jfinal

代码

 
阅读更多
#include <iostream>
#include <vector>
#include <map>
using namespace std;
#define PCAP_PATH_NAME "/fwlog/bugreport/pcap/"
map<int, vector<string>> file_all;
void initial_map()
{
DIR *dir_content;
DIR *dir_file;
struct dirent* dir_ent;
struct dirent* dir_ent_file;
vector<string> tmp;
dir = opendir(PCAP_PATH_NAME);
if(dir == NULL)
{
prinf("open dir fail\n");
return 0;
}
while((dir_ent = readdir(dir)) != NULL)
{
if(dir_ent->d_type == mulu)
{
string tmp = PCAP_PATH_NAME;
tmp +="/";
tmp +=dir_ent->d_name;
dir_file = opendir(tmp.c_str());
if(dir_file == NULL)
{
printf("open file dir fail\n");
return 0;
}
while((dir_ent_file = readdir(dir_file)) != NULL)
{
tmp.push_back(string(dir_ent_file->d_name));
}
}
int sid = atoi(dir_ent->d_name);
file_all.insert(pair<int vector<string>>(sid,tmp);
tmp.clear();
}
}
bool find_sid_dir(int sid)
{
map<int, vector<string>>::iterator it = file_all.find(sid);
if(it != file_all.end());
{
return true;
}
else
{
return false;
}
}
map的大小
map.size();
if(file_all.size() >= 100)
int find_dir_earlist()
{
string str_ret = "";
struct stat buf;
time_t earlist;
map<int, vector<string>>::iterator it;
for(it = file_all.begin(); it != file_all.end(); it++)
{
string dir_name = PCAP_PATH_NAME;
dir_name += "/";
dir_name += atoi(it->first);
stat(dir_name.c_str(), &buf);
if(it == file_all.begin())
{
earlist = buf.st_mtime;
str_ret = dir_name;
}
if(buf.st_mtime < earlist)
{
earlist = buf.st_mtime;
str_ret = dir_name;
}
}
return it->first;
}
//删除文件夹用我自己的调用system函数来执行
//删除sid目录
调用file_all.erase(sid);
mkdir//创建目录
//创建成功加入到file_all这个map中
//失败回滚
int file_count(int sid, string &ear_file)
{
int count = 0;
time_t earlist;
struct stat buf;
stringstream ss;
string out;
map<int, vector<string>>::iterator it;
for(it = file_all.begin(); it != file_all.end(); it++)
{
string file_path = "PCAP_PATH_NAME";
file_path +="/";
ss<<it->first;
ss>>out;
file_path += out;
count += it->second.size();
vector<string>::iterator it1;
for(it1 = it->second.begin(); it1 != it->second.end(); it++)
{
stat(file_path.c_str(),&buf);
if(it1 == it->second.begin() && it == file_all.begin())
{
ear_file = file_path;
earlist = buf.st_mtime;
}
else
{
if(earlist > buf.st_mtime)
{
ear_file = file_path;
earlist = buf.st_mtime;
}
}
}


}
return count;
}
if(file_count() > 100)
{
//删除文件
//创建文件,加入map,写文件
}
分享到:
评论

相关推荐

    C标准库源代码(学习C/C++必备)

    C标准库源代码,能提高对C的理解,不错的哦 下载文件列表 Pack : clibsource.rar C 标准库源代码\ABORT.C C标准库源代码\ABS.C C标准库源代码\ACCESS.C C标准库源代码\ADJUSTFD.C C标准库源代码\ALGRITHM C标准库源...

    YOLOV5口罩检测数据集+代码+模型 2000张标注好的数据+教学视频.zip

    YOLOV5口罩检测数据集+代码+模型 2000张标注好的数据+教学视频 代码的下载地址在:https://gitee.com/song-laogou/yolov5-mask-42 大家可以按照这里的视频教程配置环境:...

    android 经典代码例子

    android 经典代码例子,若干个。。。。

    博客文章《完成端口详解》配套代码

    这份代码是我博客里的文章《完成端口详解 - 手把手教你玩转网络编程系列之三》的配套代码 里面的代码包括VC++2008/VC++2010编写的完成端口服务器端的代码,还包括一个对服务器端进行压力测试的客户端,都是经过我...

    垃圾分类数据集及代码

    代码运行说明: 1、 安装运行项目所需的python模块,包括tensorflow | numpy | keras | cv2 2、 train.py用于训练垃圾分类模型,由于训练的数据量过于庞大,因此不一并上传 3、 predict.py用于预测垃圾的类别,首先...

    大麦抢票+源代码+辅助工具+详细文档教程

    大麦抢票+辅助工具+源代码+供参考+自动抢票+详细文档教程+亲测可运行+基于python 大麦抢票+辅助工具+源代码+供参考+自动抢票+详细文档教程+亲测可运行+基于python 大麦抢票+辅助工具+源代码+供参考+自动抢票+详细...

    自主研发的软著申请代码文档整理输出工具

    可在软著申请时使用的代码文档整理输出工具,可选择多个特定目录,设置多类型文件,指定选择生成代码文档,可操作性很好,并且在生成word代码文档时,过滤了所有空白行和注释,过滤的注释类型涵盖mysql、java、php、...

    Linux内核源代码情景分析 (上下册 高清非扫描 )

    1.4 Linux内核源代码中的C语言代码 1.5 Linux内核源代码中的汇编语言代码 第2章 存储管理 2.1 Linux内存管理的基本框架 2.2 地址映射的全过程 2.3 几个重要的数据结构和函数 2.4 越界访问 2.5 用户堆栈的扩展 2.6 ...

    AD7124驱动代码,基于STM32f103的完整代码 已全部调通

    最初想省事,在网上找了人想要份驱动代码,结果对方直接开价1500,我无力吐槽。后续又加了几个QQ想要份代码参考,结果就是没有回应的。想想真是世态炎凉啊。自己遇到问题的时候,在网上百般求助,自己解决了,不是...

    很强大的java代码混淆工具 Jocky

    Jockey跟其他混淆工具不同的是:它是直接对编译过程做文章,也就是在把java文件编译为class文件的过程中对代码进行混淆,混淆后的代码中包含很多JVM 指令,大家知道JVM指令是面向机器的,人类一般很难看懂!...

    中间代码生成器的设计(实验报告+代码+运行结果) 编译方法

    (2) 编写代码并上机调试运行通过。 ·输入——算术表达式 ·输出——语法分析结果 相应的四元式序列 (3) 本实验已给出递归子程序法的四元式属性翻译文法的设计,鼓励学生在此基础上进行创新,即设计LL(1)分析法或LR...

    编译原理中间代码生成实验报告——完整版

    表达式中间代码生成 二、实验目的 熟悉算术表达式的语法分析与中间代码生成原理。 三、实验内容 1. 构造算术表达式的四元式翻译文法 2. 设计算术表达式的递归下降子程序分析算法 3. 设计算术表达的四元式生成算法...

    上期CTP_API_C++可实盘的源代码(更新).rar

    上期CTP API C++ 源代码 单合约版 下载文件名AutoTrader_ctp_c++源代码.rar 填入经纪公司代码,实盘帐号,密码即可完成行情接收,指标计算,实盘下单连续开平仓。 功能简要介绍如下: 自动保存订阅合约TICK数据到\...

    web前端网页设计作品web期末大作业web前端作业网页制作代码web大作业制作网页代码

    ,网页要求的总数量太多?...多套(HTML+CSS+JS)网页设计的学生期末大作业,都符合学校或者学生考试期末作业的水平,都是div+css框架代码写的,可满足大学生网页大作业网页设计作业需求, 喜欢的可以下载!

    Android源代码开发和调试环境搭建完整版PPT

    Android源代码开发环境与SDK开发环境相比,优势是可以查看和调试系统源代码,包括Java代码和C/C++代码。这对应用开发也是非常有用的,因为在开发中碰到疑难杂症时可以跟踪到系统内部去定位问题。对于涉及到C/C++代码...

    代码统计工具 可统计项目行数

    可用于对VC++、C++ Builder、Delphi、VB、C/C++、ASM、Java、C#、SQL 等程序源码进行详细的统计,可以准确的分析出程序中代码行、注释行和空白行的行数。程序会自动根据你选择的文件类型选择相应的统计方式,并将...

    最新版java代码生成器基于springMvc+mysql 后台功能一键生成

    最新版java代码生成器基于springMvc+mysql 后台功能一键生成 压缩包里的jdk文件目录 请自行下载jdk1.8.0_45版本并覆盖进去 没有jdk是运行不起来的 也可以下载其他jdk版本 但是jdk1.8.0_45这个文件目录名称不要更改 ...

    JAVA上百实例源码以及开源项目源代码

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    Android应用自动更新代码实现

    Android应用自动更新代码实现,完美实现代码的自动更新。

    VS2008+SQL2005开源普通三层架构项目源代码

    能生成从表示层到SQL脚本的所有代码,只需使用VS2008+SQL2005(无需编码,生成后将代码加入我提供的框架就成一个项目,编译后即可使用)生成前需将数据库按要求设计好,生成的代码带页面验证,AJAX智能提示、增、删...

Global site tag (gtag.js) - Google Analytics