QT 文件操作

本文介绍了一个简单的文件操作流程,包括如何创建文件夹、如何在指定文件夹内创建文件、如何读取文件内容并统计行数,以及如何将数据写入文件等关键步骤。

创建文件夹

void udp::Create_a_folder()
{
    QString absolutePath = "D:/";
    QString dirName = absolutePath+"/"+QDateTime::currentDateTime().toString("文件夹名称");
    QDir dir(dirName);
    if(!dir.exists())
        dir.mkdir(dirName);
    else
        return;
}

在以上文件夹中创建文件

void udp::Create_a_file()
{
    QString strTime = "文件昵称";
    filename =dirName+"/"+strTime+".txt";//文件路径
    QFile file(filename);
    file.open(QIODevice::ReadWrite|QIODevice::Text|QIODevice::Append);
    file.close();
}

获取文件中内容的行数

int udp::Read()
{
        QFile file(filename);//filename为文件路径
        if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
            return 0;
        int count = 0;
        QTextStream in(&file);
        while (!in.atEnd()) {
              QString line = in.readLine();
              count++;
            }
        return count;
}

读取文件中的内容

void udp::Read_the_content()
{
    int ns = Read();
    int n = 0;
    QFile file(filename);
    if (file.open(QIODevice::ReadOnly | QIODevice::Text))
    {
        QString line1;
        QTextStream in(&file);  //用文件构造流
        while(n < ns)
        {
            line1 = in.readLine();//读取一行放到字符串里
            qDebug()<<line1;
            n++;
        }
        file.close();
    }
}

写入数据

void udp::wfile()//写入数据
{
    QString str = "要写入的数据";
    QFile file(filename);
    file.open(QFile::WriteOnly|QFile::Truncate);
    file.close();
    file.open(QIODevice::ReadWrite|QIODevice::Text|QIODevice::Append);
    file.write(str.toLocal8Bit());//连续写入
    file.write(QString(str+"\n").toLocal8Bit());//换行写入
    file.close();
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值