|Title||»||BiblioSpec unicode filepath support|
For i18n support, all the file handling functions would need to be updated to either use narrow strings with UTF-8 encoding, or wide strings with UTF-16 encoding. Narrow with UTF-8 is what we did to add i18n support for core proteowizard (using boost nowide to convert the UTF-8 to WCHAR when calling Windows API functions), but our file handling functions are somewhat more centralized there than in BiblioSpec. So any fopen, stdin, fstream::open, etc calls need to be switched to make sure they would use boost::nowide (and possibly refactored if boost::nowide doesn't support the particular overload or function BiblioSpec currently uses). Boost::nowide also provides UTF-8 versions of cin/cout so the standard input could support UTF-8 easily as well.