我是Qt的初学者,我项目的一部分是将现有文件移动到另一个现有目录?有人可以给我一个具体的例子吗?我不确定我是否应该使用 Qfile::rename((。我试着这样写
QDir::rename("/home/joshua/test.txt","/home/joshua/test/test_c.txt");
但错误是不能在没有对象的情况下调用成员函数'bool QDir::rename(const QString&, const QString&(' QDir::rename("/home/joshua/test.txt","/home/joshua/test/test_c.txt"(; ^
对不起,伙计们,都是我的错,我问了一个如此不清楚和愚蠢的问题,我很抱歉浪费了你的时间,我是一个初学者,在我问这个问题之前,我真的真的没有注意到这个问题以前被问过,因为我的水平很低。因为我太天真了,我不能再问问题了,所以请,请原谅我问这个问题,我压力太大,因为我在一家公司实习,我的项目对我来说很辛苦,所以我别无选择地做这样浪费你时间的事情,最后,我想对那些看过我问题的人说声谢谢。
根据文档:
bool QFile::rename(const QString & newName(
将当前由 fileName(( 指定的文件重命名为 newName。返回 如果成功,则为 true;否则返回假。
在您的情况下,您必须执行以下操作:
QFile file("/home/joshua/test.txt");
file.rename("/home/joshua/test/test_c.txt");
QDir::rename()
是QDir
的实例方法,因此您需要一个QDir
对象来调用它(并且此目录将是传递文件名的基础(。 对于您的示例,如下所示:
QDir d("/home/joshua");
bool renamed = d.rename("test.txt" , "test/test_c.txt");
您将需要使用返回值。
或者,您可以使用QFile::rename()
- 默认目录是进程的当前工作目录。