QFile
QFile
读index.php/tags-41973.html" class="superseo">���本文件,写文本文件。
()- ui创建两个Push Button,一个Text Edit
- widget.h
private slots: void on_pushButtonread_clicked(); void on_pushButton_2write_clicked();
- widget.cpp
#include "widget.h" #include "ui_widget.h" #include #include #include #include #include Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); } Widget::~Widget() { delete ui; } void Widget::on_pushButtonread_clicked() { QString path = QFileDialog::getOpenFileName(this, "open", "../", "TXT(*.txt)"); if (path.isEmpty() == false) { //文件对象 QFile file(path); //打开文件,只读方式 bool isOK = file.open(QIODevice::ReadOnly); if(isOK == true) { #if 0 //读文件 默认只识别utf8编码 QByteArray array = file.readAll(); // 显示到编辑区 // ui->textEdit->setText(QString(array)); ui->textEdit->setText(array); #endif QByteArray array; while (file.atEnd() == false) { //读一行 array += file.readLine(); } ui->textEdit->setText(array); } //关闭文件 file.close(); // 获取文件信息 QFileInfo info(path); qDebug() QString path = QFileDialog::getSaveFileName(this, "save", "../", "TXT(*.txt)"); if (path.isEmpty() == false) { //文件对象 QFile file; // 关联文件名字 file.setFileName(path); //打开文件,只写方式 bool isOK = file.open(QIODevice::WriteOnly); if(isOK == true) { // 获取编辑区内容 QString str = ui-textEdit-toPlainText(); // QString -- QByteArray // file.write(str.toUtf8()); // 另外的写法 QString -- c++ string -- char * // file.write(str.toStdString().data()); // 另外的写法 转换为本地编码 file.write(str.toLocal8Bit()); } file.close(); } }
- widget.cpp
The End