Node.js为什么将BOM字符转换为0xFE 0xFF
Why does Node.js convert BOM character to 0xFE 0xFF?
我一直在处理节点的fs.readFileSync()
,将"utf8"
作为读取输入的编码。当文件包含UTF8中的BOM字符(0xEF 0xBF 0xBB)时,它会将其转换为字节序列0xFE 0xFF,即Unicode编码。
它为什么要这样做?为什么不在UTF8中保留BOM的原始序列?
BOM是字符U+FEFF。0xEF 0xBB 0xBF是其UTF-8表示形式。但是,通过使用utf8编码进行读取,您就可以解码UTF-8。在这一点上,谈论"字节序列"变得毫无意义;您有一个字符串,其中第一个是U+FEFF。
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- 如何在Javascript中将JSon对象转换为数组
- 使用JS将数组转换为json对象
- 如何使用json将对象列表从java转换为javascript
- 偶尔结结巴巴地说“;堆叠的”;translate()上的转换(v4.0.0-alpha40)
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- 在Javascript中转换对象数组
- 将数字转换为一定数量的硬币
- 将纯文本URL转换为可单击链接
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 如何将TypeScript对象转换为普通对象
- 检测个位数整数时正在转换毫秒
- 从javascript到jquery的转换
- DOM事件通过JSON转换为java
- 将圆柱体转换为弯管
- 混合 ui-sref 和 $state.go 在 Angular ui-router 中进行状态转换
- JavaScript代码问题:我正在将对象转换为数组
- 如何将字母转换为二进制代码
- Node.js为什么将BOM字符转换为0xFE 0xFF