[Issue 8020] std.stdio can't open UTF16 file names in Windows
http://d.puremagic.com/issues/show_bug.cgi?id=8020 Denis Shelomovskij verylonglogin@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED CC||verylonglogin@gmail.com Version|unspecified |D2 Resolution||DUPLICATE Severity|enhancement |major --- Comment #6 from Denis Shelomovskij verylonglogin@gmail.com 2012-07-06 11:54:47 MSD --- (In reply to comment #5) Then someone just needs rig current std.file to call toUTF16/toUTFz... std.file works good with non-ASCII strings. This is std.stdio issue. ...and forward the result to the right _wfopen... And std.file uses plain WinAPI, not its buggy wrapper from Digital Mars C runtime. ...This is all is just embarracing. Yes, but std.stdio is even worse than you think (e.g. it can be 100x slower than direct C function calls as bearophile noted about rawWrite). *** This issue has been marked as a duplicate of issue 7648 *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8020] std.stdio can't open UTF16 file names in Windows
http://d.puremagic.com/issues/show_bug.cgi?id=8020 --- Comment #4 from Oleg Kuporosov oleg.kuporo...@gmail.com 2012-05-04 06:05:24 PDT --- Dmitry, we should not assume the name string is in UTF8, it may be also some another 8-bit code page in being supported in Windows, like 125x and so on. Such encoding should be done by application itself. What I think is to have File/open/popen( wstring, string mode ) which should care about UTF16 names. Surprisingly I found some links in DMC includes to _wfopen receiving wchar_t which should exacly help here. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8020] std.stdio can't open UTF16 file names in Windows
http://d.puremagic.com/issues/show_bug.cgi?id=8020 --- Comment #5 from Dmitry Olshansky dmitry.o...@gmail.com 2012-05-04 07:48:07 PDT --- (In reply to comment #4) Dmitry, we should not assume the name string is in UTF8, it may be also some another 8-bit code page in being supported in Windows, like 125x and so on. Such encoding should be done by application itself. Nope, char is UTF-8 codeunit period. See TDPL, language spec etc. Legacy one-byte encodings should be transfered in bytes/ubytes whatever. BTW NTFS is UTF-16 (or subset of it). What I think is to have File/open/popen( wstring, string mode ) which should care about UTF16 names. Surprisingly I found some links in DMC includes to _wfopen receiving wchar_t which should exacly help here. Then someone just needs rig current std.file to call toUTF16/toUTFz (see std.uni) and forward the result to the right _wfopen on win32. UTF-16 been the defacto standard in Windows for a looong time. This is all is just embarracing. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8020] std.stdio can't open UTF16 file names in Windows
http://d.puremagic.com/issues/show_bug.cgi?id=8020 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added CC||bugzi...@digitalmars.com --- Comment #1 from Walter Bright bugzi...@digitalmars.com 2012-05-03 00:51:22 PDT --- UTF8 supports the full unicode set, not just ASCII. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8020] std.stdio can't open UTF16 file names in Windows
http://d.puremagic.com/issues/show_bug.cgi?id=8020 Dmitry Olshansky dmitry.o...@gmail.com changed: What|Removed |Added CC||dmitry.o...@gmail.com --- Comment #3 from Dmitry Olshansky dmitry.o...@gmail.com 2012-05-03 07:33:42 PDT --- I assumed it just transcodes UTF-8 into UTF-16 before trying to contact the OS on win32. Apparently that's not the case. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---