开发者

How to move files in Qt?

Is there a cross-platform开发者_Python百科 function in Qt that is equivalent to the MoveFile function in Windows and the mv command in Linux?


Sure, QDir::rename() following the old Unix / POSIX tradition of calling this rename.

Which makes sense if you think of a file with its complete path: the underlying inodes just get assigned a different path/file label.


You would use QDir::rename() but be beware of the special cases when rename() can fail:

On most file systems, rename() fails only if oldName does not exist, if newName and oldName are not on the same partition or if a file with the new name already exists. However, there are also other reasons why rename() can fail. For example, on at least one file system rename() fails if newName points to an open file.


QUrlOperator::copy() is an alternative to QDir::rename() that may also work for you.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜