2016-03-23 9:20 GMT+03:00 Michele Calgaro michele.calgaro@yahoo.it:
On 2016/03/23 02:51 PM, Fat-Zer wrote: Uhm, makes sense, good point. Interestingly my disagreement with you came from the other way around: what if the filesystem is using a 16bit or 32bit encoding? How would TQString::fromLocal8Bit() interpret that? Anyhow it was just my 2 cents :-) Cheers Michele
Firstly, TQString::fromLocal8Bit() has const char * argument, but neither utf16 nor utf32 may be stored inside a plain char* array, so it's not an issue (unless we are on some very strange platform with a 16 or 18 bit chars)... For Utf16 there is fromUcs2(), but on system interaction level it's useful only for non-*nix'es... In the unix world all API calls use char* and as a consequence no native unix filesystem uses long-Char encoding. AFAIK the only one semi-supported filesystem in linux that uses utf16 is ntfs, and symbols are converted by the kernel (or ntfs-3g) to the desired encoding (see "nls" and "utf8" mount options for kernel module and "locale" for ntfs-3g).
PS: Sorry to everybody if we are making too much noise on the mail list...