Door UTF8 als standaard tekencodering in te stellen in Windows 7
is er een manier om Windows 7 in te stellen om wereldwijd UTF-8 als standaard te gebruiken? is echt vervelend om elke tekstverwerker in te stellen om het te gebruiken.
is er een manier om Windows 7 in te stellen om wereldwijd UTF-8 als standaard te gebruiken? is echt vervelend om elke tekstverwerker in te stellen om het te gebruiken.
Het korte antwoord is nee, het is niet mogelijk.
Om het uit te werken, ik ben bang dat je geen globale coderingsoptie zult vinden in Windows 7 die je beide 1) een globale standaardinstelling laat instellen die 2) alle applicaties die je hebt genoemd zou gehoorzamen.
*Ook wil ik vragen wat hier het probleem is dat je probeert op te lossen? *
Het is aan de applicatie om te kiezen of ze intern unicode gebruiken om gegevens weer te geven. Hoewel het gebruik van unicode wordt aangemoedigd ](http://msdn.microsoft.com/en-us/library/dd374081%28v=vs.85%29.aspx), kunt u er nooit zeker van zijn dat al uw toepassingen dit intern ondersteunen.
Wat u kan doen , is echter de standaard tekencodering voor elk van de vermelde toepassingen wijzigen:
UTF-16LE
. Dit is vooral niet mogelijk omdat Windows UTF-8 niet toestaat als de ANSI-codepagina van het systeem, hoewel het wel een ANSI-codepagina heeft voor UTF-8, codepagina 65001 . Hier lijken verschillende redenen voor te zijn:
Codepagina 65001 werkt niet overal. Het is specifiek gebroken met enkele van de MultiByte-ondersteuning in Windows die verwachten dat multibyte-tekens één of twee bytes nodig hebben, terwijl UTF-8 tussen één en vier bytes vereist. De WriteFile()
API bijvoorbeeld geeft een onjuist resultaat weer onder codepagina 65001, die door alle bibliotheekcodes heen borrelt die erop gebaseerd zijn, zoals write()
.
Wijlen Michael Kaplan, die bij Microsoft aan de internationalisering werkte, had een blog, “Sorting it all Out” , met verschillende berichten over gerelateerde onderwerpen. Ik mailde hem direct over een aantal van deze zorgen terug in de tijd.