qt 一行一行的读取文件并保存到一个字符数组中

在Qt中,你可以使用QFileQTextStream类来一行一行地读取文件,并将读取的内容保存到一个字符数组(或更常见的QStringList)中。以下是一个简单的示例,展示如何实现这一功能:


#include <QFile>  
#include <QTextStream>  
#include <QStringList>  
  
QStringList readLinesFromFile(const QString &filePath) {  
    QStringList lines;  
    QFile file(filePath);  
  
    if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {  
        // 处理文件无法打开的情况  
        return lines;  
    }  
  
    QTextStream in(&file);  
    while (!in.atEnd()) {  
        QString line = in.readLine();  
        lines.append(line);  
    }  
  
    file.close();  
    return lines;  
}

在这个函数中,我们首先尝试打开指定的文件。如果文件无法打开,我们返回一个空的QStringList。然后,我们使用QTextStream来逐行读取文件内容,并将每一行添加到QStringList中。最后,我们关闭文件并返回包含所有行的QStringList

请注意,这个函数返回的是一个QStringList而不是字符数组,因为在Qt中,QStringList是处理字符串列表的更自然和更方便的方式。如果你确实需要一个字符数组,你可以根据需要转换这个QStringList

另外,这个函数没有处理任何错误情况,除了文件无法打开的情况。在实际应用中,你可能还需要添加更多的错误处理代码,以确保程序的健壮性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值