Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在windows 10中使用msxsl.exe获取UTF8 html_Html_C++_Utf 8_Windows 10_Msxsl - Fatal编程技术网

如何在windows 10中使用msxsl.exe获取UTF8 html

如何在windows 10中使用msxsl.exe获取UTF8 html,html,c++,utf-8,windows-10,msxsl,Html,C++,Utf 8,Windows 10,Msxsl,我使用msxsl.exe从XML和XSL动态生成HTML文件。我用CuraPATION API编写C++代码,并调用MSXSL.EXE。因为在Windows7中输出是UTF8,所以我用相同的编码创建了所有相关的文件,比如CSS和JavaScript。一切正常。当我在Windows10LTSC中运行相同的应用程序时,JavaScript没有加载,因为HTML现在是使用UCS-2LE BOM编码生成的。在创建进程之前,我尝试调用setconsoleoutputccp\u UTF8。这并没有解决我的问

我使用msxsl.exe从XML和XSL动态生成HTML文件。我用CuraPATION API编写C++代码,并调用MSXSL.EXE。因为在Windows7中输出是UTF8,所以我用相同的编码创建了所有相关的文件,比如CSS和JavaScript。一切正常。当我在Windows10LTSC中运行相同的应用程序时,JavaScript没有加载,因为HTML现在是使用UCS-2LE BOM编码生成的。在创建进程之前,我尝试调用setconsoleoutputccp\u UTF8。这并没有解决我的问题。如何在不考虑操作系统的情况下获得UTF8输出?

HTML文件接受与HTML文件本身编码相同的JavaScript。这是默认行为。将JavaScript与其他编码一起使用时,可以使用tag的charset属性

因此,添加如下所示的字符集属性可以修复所有操作系统中的JavaScript类型,而不考虑HTML编码

传递到msxsl.exe的样式表

<xsl:output encoding="UTF-8" />