-
XML 编码
作者: 青苹果工作室 | ||
XML 文档中可以包含外语字母,如挪威语 ??? 或法语 êèé。要让你的XML分解器理解这些字母,就应该把XML文档存储成Unicode(统一的字符编码标准)。 b>Windows 95/98 记事本 Windows 95/98 记事本不能将文件保存成Unicode 格式。你可以用Notepad 编辑和保存包含外语字母(如挪威语和法语的??? 和 êèé)的XML 文档, < ?xml version="1.0"?> < note> < from>Jani< /from> < to>Tove< /to> < message>Norwegian: ???. French: êèé< /message> < /note> 但是如果你保存文件并用IE 5.0打开它,就会得到一个错误信息。 b>带有编码的Windows 95/98 记事本 Windows 95/98 记事本文件必须用编码属性保存。 要避免这个错误,你可以向你的XML声明中加上一个编码属性,但是不能使用Unicode。 这样的编码(用IE 5.0打开它), 就不会给出一个错误信息: < ?xml version="1.0" encoding="windows-1252"?> 这样的编码(IE 5.0打开它), 也不会给出错误信息: < ?xml version="1.0" encoding="ISO-8859-1"?> 这样的编码(IE 5.0打开它), 会给出一个错误信息: < ?xml version="1.0" encoding="UTF-8"?> 这样的编码(IE 5.0打开它), 会给出一个错误信息: < ?xml version="1.0" encoding="UTF-16"?> b>Windows 2000 记事本 Windows 2000 记事本可以将文件保存成Unicode。Windows 2000 中的记事本编辑器支持 Unicode。如果你选择要将这个XML文件保存成Unicode (注意文档中不包含任何编码属性): < ?xml version="1.0"?> < note> < from>Jani< /from> < to>Tove< /to> < message>Norwegian: ???. French: êèé< /message> < /note> 你可以用IE 5.0 打开它,而不会得到错误信息。 b>带有编码的Windows 2000 记事本 Windows 2000 记事本用"UTF-16"编码将文件保存为Unicode。如果你向保存为Unicode的XML文件中增加一个编码属性,windows 编码值就会产生一个错误。 这样的编码(IE 5.0打开它), 会给出一个错误信息: < ?xml version="1.0" encoding="windows-1252"?> 这样的编码(IE 5.0打开它), 会给出一个错误信息: < ?xml version="1.0" encoding="ISO-8859-1"?> 这样的编码(IE 5.0打开它), 会给出一个错误信息: < ?xml version="1.0" encoding="UTF-8"?> 这样的编码(IE 5.0打开它), 不会给出一个错误信息: < ?xml version="1.0" encoding="UTF-16"?> b>错误信息 如果你试图向Internet Explorer 5中装载一个XML文档,你会得到两个不同的错误信息表示编码的问题: 在文本内容中发现了一个无效字符: 如果XML文档中的一个字符与编码属性不匹配,你就会得到这个错误信息。通常,如果你的XML 文档中包含外语字母并且文件是用记事本这样的单字节编码编辑器保存的,而且没有规定编码属性的话,就会得到这样的错误信息。 从当前编码转换到不支持的指定编码: 如果你的文件保存为Unicode/UTF-16,但是编码属性指定了单字节编码,例如Windows-1252、 ISO-8859-1或UTF-8,你就会得到这样的错误信息。另外如果你的文档是用单字节编码保存的,但是编码属性指定了双字节编码例如UTF-16的话,你也会得到这样的错误信息。 结论 结论就是编码属性必须指定保存文档时所使用的编码。为避免这类错误,我的建议是: 总是将XML文件保存成没有任何编码信息的Unicode。使用一个支持Unicode的编辑器(Windows 2000 记事本就行),总是省略编码属性。 |
栏目列表
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比