
Hi, I would prefer to use the standard types like std::string and char * as well. However, I do not like much the idea about a fixed encoding, UTF-8 or something else. It is possible to use any encoding in std::string and even in std::wstring. What do you think about imbuing and codecvt-like approach in boost::filesystem for the names of the files? It has a standard interface for the content of streams, it could serve also the filenames. Not all platforms support UTF-8 filenames, sometinmes could it serve as name mangling support. Ferda
[mailto:boost-bounces@lists.boost.org] On Behalf Of Patrick Bennett
Correct (kind of), but I'd far prefer that std::string be used than for some completely new type to be defined. For users of boost::filesystem, I can't personally think of a time when a user would need to iterate the paths or files a character at a time. Because of UTF-8's nature, even if a user were to search for something like '/', it would still work for find's, [], etc. UTF-8 maps to std::string extremely well. I think there is also a fair amount of precendents already set for using UTF-8 internally using std::string as the storage mechanism. UTF-8 strings don't contain embedded nul's (std::string still works for that though), ASCII characters remains ASCII characters, and you can tell if you're in the middle of a multi-byte sequence.
Since we're talking about filesystem's inability to be used with internationalized applications, and you don't think UTF-8/std::string is the way to do it, what is your recommendation?
Cheers... Patrick Bennett
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost