如何获取当前目录中的所有文件名

How to get all file names in current directory?

本文关键字:文件名 何获 取当前目录      更新时间:2023-10-16

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

最好使用独立于平台的解决方案,否则我使用的是Windows 7 Enterprise 32位。

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

下面是执行此操作的示例代码:

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

实质上,您利用了这些 API:FindFirstFileFindNextFile

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

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