我在javascript中动态生成了一个xml文件,但是中文一直出现乱码,经过几番验证,问题解决。
这是我的源码
解决方案:
下面是我的js源码,注意字符集
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<input type="button" name="save" onclick="save()" value="保存">
</body>
<script type="text/javascript">
var fso,tf;
function save(){
fso=new ActiveXObject("scripting.FileSystemObject");
path="E:\\javaee工作空间\\临时测试\\WebContent\\html\\";
if(!fso.FolderExists(path)){
fso.CreateFolder(path);
}
path+="test.xml";
tf=fso.CreateTextFile(path,true);//创建新文件
var content='<?xml version="1.0" encoding="utf-8"?>';
content+='<entrys>';
content+='<names>张三</names>';
content+='</entrys>';
tf.WriteLine(content);
tf.Close();
}
</script>
</html>
下面是动态生成的xml文件,注意:这里的中文显示的是乱码
<?xml version="1.0" encoding="utf-8"?>
<entrys>
<names>����</names>
</entrys>
下面是换了字符集之后的xml:
将html头部和javascript的字符集都换成gb2312
成功解决
<?xml version="1.0" encoding="gb2312"?>
<entrys>
<names>张三</names>
</entrys>