#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); iconInit(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushButton_choose_clicked() { char * strhome = getenv("HOME"); QString strsavepath; strsavepath = strhome; strsavepath = strsavepath + "/log"; QDir dir(strsavepath); if(!dir.exists()) strsavepath = getenv("HOME"); mfile_path = QFileDialog::getOpenFileName(this, tr("Selecte file to uncompress"),strsavepath); ui->lineEdit->setText(mfile_path); } void MainWindow::on_pushButton_start_clicked() { fileUncompress(mfile_path); } void MainWindow::fileUncompress(QString _filename) { QString filename_uncomp = _filename + ".log";//compressed file name QFile file(_filename); if(file.exists()){ qDebug() << "brefore compressed file size:" << file.size(); bool ok = file.open(QIODevice::ReadOnly); if(ok){ QByteArray buffer = file.readAll(); QFile writeFile(filename_uncomp); ok = writeFile.open(QIODevice::WriteOnly); if(ok){ //uncompress ui->progressBar->setValue(10); qDebug() <progressBar->setValue(50); qDebug() <progressBar->setValue(100); qDebug() << QTime::currentTime()<< "after compressed file size:" << writeFile.size(); } writeFile.close(); } } } void MainWindow::iconInit() { //添加提示信息 ui->pushButton_choose->setToolTip(tr("Choose file to uncompress")); //设置icon图片 QIcon icon; icon.addFile(":icon/compress.svg",QSize(),QIcon::Normal, QIcon::On); setWindowIcon(icon); }