Art*_*yom 10 c++ windows unicode gcc wide-api
当文件名是"Unicode"文件名时,我需要打开一个文件作为std :: fstream(或实际上任何其他std :: ostream).
在MSVC下我有非标准的扩展名std::fstream::open(wchar_t const *,...)?我可以用其他编译器做什么,比如GCC(最重要的)和Borland编译器.
我知道CRTL提供_wfopen但是它提供了C FILE *接口而不是io-stream,也许有一种非标准的方法来创建io-stream FILE *?有没有boost::ifstream像MSVC一样的Windows扩展?
不幸的是,没有标准的方法可以做到这一点,虽然C++ 0x(1x?)承诺这样做.在此之前,您正确地假设可以在Boost中找到解决方案,但是,您正在搜索的库是Boost.Filesystem.
Boost.Filesystem默认在内部使用宽字符串作为其通用路径系统,因此在这方面没有unicode问题.