1

我打算编辑文本文件的一些数据,这是我打算做的:

1)读取文件的原始内容,使用单链表获取文件的数据,然后关闭文件

2)重新打开文件,但现在使用“w+”然后获取编辑后的数据然后关闭文件

3) 用于fprintf写入包含已编辑数据的新文件

4)获取文件的原始内容,然后将它们放入新文件中。

5)将新文件的名称更改为原始内容文件名

现在,如何更改文本文件的名称?

我的计划听起来很荒谬,我知道:

问:既然可以在原始文件中进行编辑,为什么还要更改新文件的名称?

A:我尝试​​使用“w+”将编辑后的数据放入原始文件中,但在需要获取原始文件内容并将其重新放入原始文件的部分中迷路了。

谢谢!

4

2 回答 2

4

您可以使用该rename(2)功能重命名文件。如果您在 Windows 上并且需要支持 Unicode 文件名,则可以使用该MoveFileExW功能;但如果您只需要重命名 ANSI 文件名,请改用它,rename()因为它更便携。

于 2013-10-15T17:23:02.453 回答
-1

您可以只使用系统调用。在linux中,它会是这样的:

system("mv old-file-name new-file-name");
于 2013-10-15T17:22:33.727 回答