【发布时间】:2014-08-14 09:25:34
【问题描述】:
我有以下代码将文件复制到子文件夹。但总是前 20 张图片而不是 1-20 复制到第一个文件夹,21-40 复制到第二个文件夹,41-60 复制到第三个文件夹:
QDir dir(ui->lineEdit->text());
QList<QString> fileNameList;
QFileInfoList files = dir.entryInfoList();
foreach(const QFileInfo &fi, files) {
if(!fi.isDir()) {
if (fi.fileName().endsWith(".JPG")) {
fileNameList.append(fi.fileName());
}
}
}
int parts = (int) (fileNameList.size()) / ui->spinBox->value();
qDebug() << "parts=" << parts;
for (int i = 0; i < parts; i++) {
QDir().mkdir(ui->lineEdit->text() + QString("/part%1").arg(i + 1));
for (int l = 0; l < ui->spinBox->value(); l++) {
QFile::copy(ui->lineEdit->text() + "/" + fileNameList.at(l), ui->lineEdit->text() + QString("/part%1").arg(i + 1) + "/" + fileNameList.at(l));
}
}
【问题讨论】:
标签: qt file-copying