gpt4 book ai didi

c++ - 在 C++ 中生成一个随机文件名

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:15:32 24 4
gpt4 key购买 nike

我正在使用 C++ 开发对象检测应用程序。而且我存储了每个假阴性图像,所以我需要一个随机文件名生成器,它不应该重复它们。

我目前正在使用tmpnam,但它不保证唯一性,所以文件可能会被覆盖,因为所有文件都存储在同一个文件夹中。

我正在寻找任何其他方式来生成唯一的文件名。

最佳答案

我建议使用 GUID。如前所述,它们并非 100% 有保证,但出于您的目的,它们可能会很好。

我附上了代码:

#include <Windows.h>
#include <iostream>
#include <objbase.h>

int main()
{
GUID guid;
CoCreateGuid(&guid);

printf("%08lX-%04hX-%04hX-%02hhX%02hhX-%02hhX%02hhX%02hhX%02hhX%02hhX%02hhX",
guid.Data1, guid.Data2, guid.Data3,
guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3],
guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
system("pause");
return 0;
}

这将返回唯一名称 32 hex digits grouped into chunks of 8-4-4-4-12 .

在我的机器上运行代码后,它提供了一个 GUID:CAF9B27A-AA9E-46DE-9966-C3EDBE5D674F

希望这对您有所帮助。

关于c++ - 在 C++ 中生成一个随机文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34165202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com