【1】新建文件
bool CreateFile(QString name){
QString fileName = name ; //"文件绝对路径名"
QFile file(fileName);
QFileInfo fileInfo(file);
QString fileExtension = fileInfo.suffix();
if(fileExtension.isEmpty()) {
fileName+=".txt";
}
file.setFileName(fileName);
fileInfo.setFile(file);
if (!fileInfo.exists()) {
// 文件不存在,创建文件
if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
file.close();
return true;
}
}
else
{
qDebug()<<"文件已存在\n";
return false;
}
}
【2】删除文件
bool DeleteFile(QString fileName){
if (QFile::exists(fileName)) {
if (QFile::remove(m_currentSelectFileName)) {
return true;
}
}
return false;
}
【3】复制文件
bool CopyFile(QString src, QString dest){
if (QFile::copy(src, dest)) {
qDebug() << "文件复制成功";
return true;
} else {
qDebug() << "文件复制失败";
return false;
}
}
另一个复制文件的方式:
bool CopyFile(QString src, QString dest){
QFile sourceFile(src);
QFile destinationFile(dest);
if (sourceFile.open(QIODevice::ReadOnly) && destinationFile.open(QIODevice::WriteOnly))
{
// 创建一个缓冲区来存储读取的数据
char buffer[1024];
qint64 bytesRead;
// 循环读取并写入数据,直到文件末尾
while ((bytesRead = sourceFile.read(buffer, sizeof(buffer))) > 0) {
destinationFile.write(buffer, bytesRead);
}
sourceFile.close();
destinationFile.close();
qDebug() << "文件复制成功";
return true;
} else {
qDebug() << "文件复制失败";
return false;
}
}