1

我的目标是构建一个程序,重命名当前工作目录中的所有文件,使它们没有任何空格、任何特殊字符或任何重音字符(例如 É 将变为 E)。我打算用int rename(const char *oldname, const char *newname);. 我的问题是如何获取当前工作目录中的文件?我想将我正在创建的可执行文件放在一个包含错误名称的文件的文件夹中,然后运行它,所有文件都被重命名。

平台独立的解决方案会更好,否则我使用的是 Windows 7 Enterprise 32bit。

这个问题不是重复的,因为我不知道opendir ("c:\\src\\");它的路径是从哪个目录执行程序。

4

2 回答 2

1

这是一个示例代码:

http://bytes.com/topic/c/answers/869208-list-files-directory

本质上,您使用这些 API:FindFirstFileFindNextFile

有关跨平台解决方案,请参阅findfirst()findnext()

于 2012-08-15T00:09:27.163 回答
0

一个选项是使用 opendir(".") ,这将打开当前目录。

于 2015-05-15T20:03:54.323 回答