2016-03-23 9:20 GMT+03:00 Michele Calgaro <michele.calgaro(a)yahoo.it>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...