QT文件的读取与插入

本文介绍了如何在Qt中使用QFile和QTextStream来实现文件的读写操作,包括在文件末尾追加文本、读取txt内容并显示在列表中,以及处理双击事件进行内容转移。
摘要由CSDN通过智能技术生成

实现功能:

1.输入文本到 Line_edit  点击插入,把文本添加到文件末端

2.点击 获取 读取txt文本,将文本内容显示到左边的窗口中

3.双击左边窗口的选项,弹出对话框,跳转到右边

主要介绍一下文件OI的使用

首先用QFile file(“文件路径),让txt被打开

实现功能 1

void MainWindow::on_pushButton_2_clicked()
{
    QString s=ui->lineEdit->text();
    file.open(QIODeviceBase::Append);
    QTextStream txt_add(&file);
    txt_add<<Qt::endl<<s;
    ui->lineEdit->clear();
    file.close();

}

 想要在文件末尾写入东西,我们需要将oppen的方式设为append

再用文本流的方式, QTextStream txt_add(&file);

实现功能 2

void MainWindow::on_pushButton_clicked()
{

    file.open(QIODeviceBase::ReadOnly);
    while(!file.atEnd())
    {
        QString s=file.readLine();
        ui->listWidget->addItem(s);
    }
    file.close();

}

实现功能 3

void MainWindow::on_listWidget_itemDoubleClicked(QListWidgetItem *item)
{
    int row=ui->listWidget->currentRow();
    // QListWidgetItem *it=ui->listWidget->takeItem(row);

    int p=QMessageBox::warning(this,"转移","是否将该用户转移到右方?",QMessageBox::Yes,QMessageBox::No);
    if(p==QMessageBox::Yes)
    {
        QListWidgetItem *it=ui->listWidget->takeItem(row);
        ui->listWidget_2->addItem(it);
    }

   // delete it;
}

在写的过程中,我一开始保持着记得释放指针的好习惯,于是写delete it

但因为指针指向的东西被删除了, 这导致了窗口2没法显示被双击的内容

或者我们可以用 it->text() 的方式获取文本

此外,takeItem(row)会将你选中的项目拿走,需要放在yes条件下

  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值