资源简介
计算代码行数
代码片段和文件信息
#include “CalcCode.h“
#include
#include
#include
#include
#include
#include
#include
CalcCode::CalcCode(Qobject *parent):QThread(parent)
{
}
CalcCode::~CalcCode()
{
}
void CalcCode::run()
{
m_list.clear();
readFiles();
emit getValue(m_list);
}
void CalcCode::readFiles()
{
QDir dir(m_path);
calc(dir);
}
void CalcCode::setPath(const QString &path)
{
m_path = path;
}
//迭代
void CalcCode::calc(const QDir &dir)
{
QStringList filters;
filters<<“*“;
QFileInfoList list = dir.entryInfoList(filtersQDir::NoDotAndDotDot | QDir::AllEntriesQDir::NoSort);
for(int i=0;i
QFileInfo fileInfo = list.at(i);
if(fileInfo.isDir()){
//目录
QDir tempDir(fileInfo.filePath());
calc(tempDir);
}
else{
//文件
calcLine(fileInfo.filePath());
}
}
}
void CalcCode::calcLine(const QString path)
{
QFile file(path);
if(!file.open(QIODevice::ReadOnly | QIODevice::Text)){
qDebug()<<“open error“;
return;
}
//
int num = 0;
QTextStream stream(&file);
QString line;
while (stream.readLineInto(&line)) {
num++;
}
QStringList fileList = file.fileName().split(“.“);
QVariantMap map;
map.insert(“filePath“file.fileName());
map.insert(“lineNum“num);
map.insert(“type“fileList.at(fileList.length()-1));
getOneValue(map); //item
m_list.append(map);
file.close();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-27 02:46 calcCodeLine\
文件 1603 2018-03-27 02:46 calcCodeLine\CalcCode.cpp
文件 558 2018-03-27 02:46 calcCodeLine\CalcCode.h
文件 67 2018-03-27 02:46 calcCodeLine\README.md
文件 408 2018-03-27 02:46 calcCodeLine\calcCodeLine.pro
文件 18226 2018-03-27 02:46 calcCodeLine\calcCodeLine.pro.user
文件 23516 2018-03-27 02:46 calcCodeLine\calcCodeLine.pro.user.28d51d4
文件 164 2018-03-27 02:46 calcCodeLine\main.cpp
文件 1844 2018-03-27 02:46 calcCodeLine\widget.cpp
文件 523 2018-03-27 02:46 calcCodeLine\widget.h
文件 1433 2018-03-27 02:46 calcCodeLine\widget.ui
文件 40 2018-03-27 02:46 calcCodeLine\说明.txt
- 上一篇:qt写的记事本
- 下一篇:Wemos D1 mini阿里云MQTT例程
相关资源
- 推箱子 c语言代码
- C++学习指南语法篇代码+pdf(pdf可直接
- 北邮高级计算机体系结构记分牌程序
- 一个C++实现的源代码行数统计工具
- easySize使用方法和代码
- ZZULIOJ部分答案C语言免费.7z
- TOA/AOA定位算法C语言代码
- 高效FFT的C/C++代码实现包括基2的DIF和
- 吉他调音软件源代码
- 连连看源代码C语言版
- AVR单片机SPI通讯程序 (C语言源代码)
- Visual+C++数字图像处理-谢凤英-源代码
- 纯C++实现的截屏
- C语言解析教程第四版pdf及随书代码
- 银行计算机专业笔试题目+答案
- [纯C语言 + Win32 API]一步一步写个围棋
- FFT算法c语言代码
- 电子宠物C++完整代码可直接运行
- AAM算法实现
- 算法竞赛入门经典 第二版刘汝佳著含
- 多功能计算器实现C++代码以及代码详
- 大富翁源代码
- RC522射频模块读取S50卡中信息并通过
- VC++ 中国象棋经典游戏源代码
- C语言斗地主源代码
- C++程序源代码--21点的扑克牌游戏
- 编译原理实验报告+代码+使用说明
- 仿射密码C语言程序代码
- 数据结构各种算法实现(C++模板),
- 扩展欧几里德算法c++代码
评论
共有 条评论