QTextStream 读写文件

/*************************************************
     * QIODevice::ReadWrite 可读写
     * QIODevice::Text 换行符生效
     * QIODevice::Append 追加写入
     * QFile::Truncate 表示将原文件清空
    **************************************************/
void MainWindow::test()
{
#ifdef QTextStream_read
    QFile file("e:\\file.txt");
    if (!file.open(QIODevice::ReadOnly | QIODevice::Text)){
        qDebug()<<"open fail!";
        return;
    }
    QTextStream in(&file);
    //    QString line1= in.read(1); //读取第一个字符
    //    qDebug()<<line1;
    //    line1= in.read(10); //自动读取下10个字符
    //    qDebug()<<line1;
    QString line1= in.readLine(0); //读取第1行
    QString line2= in.readLine(2); //读取下1行前2个字符
    qDebug()<<line1;
    qDebug()<<line2;
    QString line1= in.readAll(); //读取全部txt文档,并归为一个字符串

    bool a=in.seek(6);  //定位文本中的第6个位置
    QString line2= in.read(1) ;  //读取该位的1字符
    qDebug()<<line2;
    //按行读取
    while (!in.atEnd()) {
        QString line = in.readLine();
        qDebug()<<line;

    }
#else
    QString LogFile;
    QString runPath = QCoreApplication::applicationDirPath();       //
    LogFile.clear();
    LogFile.append(tr("%1/LogFile_%2.txt").arg(runPath).arg(QDate::currentDate().toString("yyyyMMdd")));


    QFile file(LogFile);//"e:\\file.txt"
    if (!file.open(QIODevice::WriteOnly | QIODevice::Text |QIODevice::Append)){
        qDebug()<<"open fail!";
        return;
    }
    QTextStream out(&file);
    out<<"test"<<endl;
    out<<"456";
    out.flush();
    file.close();
#endif
}
  • 0
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值