首页下载资源后端Qt之QZipReader解压文件

ZIPQt之QZipReader解压文件

ManagerUser6.19KB需要积分:1

资源文件列表:

QZipReader.zip 大约有8个文件
  1. QZipReader/QZipReader.pro 1.22KB
  2. QZipReader/QZipReader.pro.user 19.78KB
  3. QZipReader/main.cpp 368B
  4. QZipReader/mainwindow.cpp 2.1KB
  5. QZipReader/mainwindow.h 514B
  6. QZipReader/mainwindow.ui 4.18KB
  7. QZipReader/msvc_make.bat 53B
  8. QZipReader/

资源介绍:

本资源可以参考博客,有详细的说明:https://blog.csdn.net/ManagerUser/article/details/125352499
#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include #include #include #pragma execution_character_set("utf-8") MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } void MainWindow::zipReader(QString filepath, QString savepath) { QZipReader zipreader(filepath); //reader.extractAll(path); // //可加可不加没有什么影响 for (int i = 0; i < zipreader.fileInfoList().size(); ++i) { QFile file(savepath + "/" + zipreader.fileInfoList().at(i).filePath); file.open(QIODevice::WriteOnly); //注意编码问题 QByteArray dt = zipreader.fileInfoList().at(i).filePath.toUtf8(); QString strtemp = QString::fromLocal8Bit(dt); QByteArray array = zipreader.fileData(strtemp); file.write(array); file.close(); } zipreader.close(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_zipPathBtn_clicked(){ QString documentPath = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); QString fileName = QFileDialog::getOpenFileName(this, tr("选择zip文件"), documentPath, tr("zip (*.zip *.sanupkg)")); if(fileName.isEmpty()){ return; } ui->zipPathLineEdit->setText(fileName); } void MainWindow::on_savePathBtn_clicked(){ QString documentPath = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); QString folderPath = QFileDialog::getExistingDirectory(this, "选择保存路径", documentPath); if(folderPath.isEmpty()){ return; } ui->savePathLineEdit->setText(folderPath); } void MainWindow::on_zipReaderBtn_clicked(){ QString zipPath = ui->zipPathLineEdit->text(); QString savePath = ui->savePathLineEdit->text(); zipReader(zipPath, savePath); }
100+评论
captcha