如何以可移植方式删除名称为 wchar_t 类型的文件C++

How to delete a file that has a name of type wchar_t in C++ in a portable way?

本文关键字:wchar 类型 C++ 文件 可移植 方式 删除      更新时间:2023-10-16

我需要删除一个名称使用 wchar_t* 定义的文件。最好的方法是什么?

删除将常量字符*作为参数。

显然,有_wremove,但仅适用于窗户。

什么是处理此问题的最佳实践(便携式(?我可以将文件名转换为 char*,但这没有抓住重点。文件名可能具有重音符号或某些其他 unicode 字符。

在有人说"这是一个糟糕的主意!你不应该使用wchar_t*作为文件名!",我没有设计这个东西。无论出于何种原因,我被要求这样做。

看起来文件系统

操作已从 C++17 添加到标准库中,如果您可以使用它。否则,您可以使用 Boost.Filesystem。不知道最佳实践,但对我来说,这听起来像是要走的路。