• 大小: 8.84KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2024-04-12
  • 语言: C/C++
  • 标签: 代码  计算  

资源简介

计算代码行数

资源截图

代码片段和文件信息

#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

评论

共有 条评论