我是一名 Java 开发人员,因此在尝试对文件进行操作时,您会实例化 File 类的一个对象。默认情况下,该对象将具有诸如getAbsoluteFile()
.
但是,在 C++ 中,根据this,您可以使用在 stdio.h 头文件中定义的称为 FILE 的类型。因为它不是一个对象而是一个类型,所以它没有方法,那么如何操作它——特别是如何重命名一个文件?
如果对象与 Java 不同(从 File 场景判断,它似乎不同),那么拥有一个在 C++ 中具有方法的对象的等价物是什么?
你在比较两个不同的东西。
在 Java 中,文件是描述文件系统中事物的对象,并且要更改/添加文件中的数据,您必须从文件中创建一个流。
在 C 中 FILE 是打开文件的句柄,用于更改文件中的数据。在 C++ 中,你真的应该使用IOStreams。C 和 C++ 标准没有 Java 文件的等价物,最接近的等价物是Boost Filesystem 库。
您不重命名文件,而是重命名文件。有一个名为rename
重命名文件的函数。它不对对象进行操作,因为 C++ 从没有对象的 C 继承了它。它只是一个以旧名称和新名称作为参数的自由函数。
#include <stdio.h>
rename("oldFileName.txt", "newFileName.txt");