未知的 UTF-8 代码单元闭合双引号

2024-07-01

我的问题如下。我正在读取一个 XML 文件,其文本节点部分包含 UTF-8 版本的打开和关闭双引号。文本被提取、缩短为 3999 字节并放入新的 XML 格式,然后保存为文件。

虽然 Notepad++ 在输入文件中正确显示了这两个符号,但输出文件包含无效的 utf-8 字符,甚至 Notepad++ 也无法显示。

左双引号打印正确,但右双引号被破坏。

使用十六进制编辑器,我发现代码单元以某种方式从

E2 80 9D

在输入文件中

E2 80 3F

在输出文件中。 我正在使用 sax-parser 进行 xml 解析。

是否有任何已知的错误可能导致这种行为?


不是已知错误,而是读取文件或写入文件时忽略编码的常见错误 - 导致使用的平台默认编码在本例中为 Windows-1252。

当您最初读取文件时,应指定 UTF-8 解码,而在写入新文件时,应指定 UTF-8 编码。如果您发布您的实现,我可以就地纠正它。

如何重现这一点:

byte[] quoteutf8 = {(byte)0xE2, (byte)0x80, (byte)0x9D};
String decodedPlatformDefault = new String(quoteutf8, "Windows-1252");
byte[] encodedPlatformDefault = decodedPlatformDefault.getBytes("Windows-1252");

for( byte i : encodedPlatformDefault ) {
    System.out.print(String.format( "%02x ", i ));
   //e2 80 3f   
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

未知的 UTF-8 代码单元闭合双引号 的相关文章

随机推荐

  • 更新主干模型/视图的轮询请求

    我需要找到一种方法来更新使用以下实现的网络应用程序backbone 用例如下 我有几个视图 每个视图 或者可能与该视图相关的模型 集合 需要在不同的时间向服务器发出不同的轮询请求以发现某些变化 我想知道最通用的方法是什么 1 实施Tradi
  • 通过setRequestHeader授权

    我发现这段代码可以使用 setRequestheader 和 Ajax 进行身份验证 this xmlDoc setRequestHeader Authorization Basic Base64 encode User Password
  • Python Pandas:使用 groupby() 和 agg() 时顺序是否保留?

    我经常使用熊猫 agg 函数对 data frame 的每一列运行摘要统计 例如 以下是生成平均值和标准差的方法 df pd DataFrame A group1 group1 group2 group2 group3 group3 B 1
  • 如何在 kubernetes 中“部署”而不进行任何更改,只是为了让 pod 循环

    我正在尝试做的事情 Pod 中运行的应用程序在启动时会刷新其数据文件 每次我想刷新数据时都需要重新启动容器 刷新可能需要几分钟 所以我有一个探针检查准备情况 What I think是一个解决方案 我将运行一个预定的工作 http kube
  • CVS 只读签出

    我必须在项目中使用CVS 到目前为止 在我的整个工作生涯中 我只使用过 perforce 而且我对 CVS 一无所知 我阅读了整个 CVS 手册 但找不到如何执行此操作 在perforce中 当你签出一个文件时 你首先必须执行p4 edit
  • C# 参数隐式转换

    有这个代码 class Program static void Main string args Check 3 Console ReadLine static void Check int i Console WriteLine I am
  • Python中字典转小写

    我希望这样做 但为了一本字典 My string lower 是否有内置函数或者我应该使用循环 您将需要使用循环或列表 生成器理解 如果你想将所有的键和值都小写 你可以这样做 dict k lower v lower for k v in
  • 为什么 Sequence 是 mypy 中 + 不支持的操作数类型?

    mypy给出一个错误Sequence str 不是受支持的操作数类型 操作员 test py from typing import Sequence def test x Sequence str y Sequence str gt Seq
  • React + Redux 中的多个/批量删除

    我有一个允许多重选择和删除功能的数据网格 我的 api 有一个删除端点 DELETE http localhost 8888 api audit id 这就是动作创建者 export function deleteAudit audits
  • 使用 mqtt 协议和 kafka 作为消息代理

    我们如何使用 mqtt 协议和 kafka 作为消息代理 客户端 android ios 桌面 java 应用程序等 将使用 mqtt phao 客户端库生成和使用消息 这些客户端库可使用 kafka 作为消息代理以不同语言提供 有什么建议
  • Python,针对频繁模式的网络日志数据挖掘

    我需要开发一个用于网络日志数据挖掘的工具 由于在特定用户会话中请求了许多 url 序列 从 Web 应用程序日志中检索 我需要找出网站用户的使用模式和组 集群 我是数据挖掘的新手 现在经常检查谷歌 发现一些有用的信息 即查询似乎指向几乎完全
  • Electron v4 支持 ECMAScript 模块吗?

    我正在使用 Electron 编写应用程序 当前版本 4 0 6 基于 Node 10 11 0 和 Chrome 69 0 3947 106 我认为最新版本的 Electron 将支持 ECMAScript ES6 模块 但到目前为止我还
  • Jenkins 管道脚本未运行

    对于下面的管道脚本 Helo World 未打印 甚至节点也没有被分配 pipeline agent any stages stage Example steps echo Hello World 安装了 Pipeline Declarat
  • 为什么当缩放改变时,具有相同高度的元素“看起来”不同?

    基本上 要点就在主题中 当我创建两个具有固定高度 2px 的相同 div 并将缩放更改为 75 或 125 时 由于某种原因它们 看起来 不同 有人可以解释一下这里发生了什么吗 我该如何解决这个问题 gradient slider line
  • 当我使用 iText 从 PDF 文件中提取文本时,我从前一页获取值

    我正在尝试从多页 PDF 文件中每个页面的特定位置提取文本块 我知道文本的位置 并且能够在第一页上正确提取它 然而 在第一页之后的页面上 提取的文本似乎正在累积 例如 如果第 1 页上的文本值为 A 第 2 页为 B 第 3 页为 C 那么
  • 如何使用 scipy.spatial.Delaunay 查找 delaunay 三角剖分中给定点的所有邻居?

    我一直在寻找这个问题的答案 但找不到任何有用的东西 我正在使用 python 科学计算堆栈 scipy numpy matplotlib 并且我有一组二维点 我为其计算 Delaunay 训练 wiki https en wikipedia
  • Python 中的双 SSH 隧道

    今天 我在命令行中使用 ssh 将端口从远程服务器转发 使用中间服务器到我的本地计算机 这是我在 shell 中使用的命令 ssh user remote server L 2443 localhost 433 此 ssh 会话使用 ssh
  • 如何将组添加到多个内置功能区选项卡 (vsto)?

    这是 VS2010 Office 2010 加载项 我想要的只是添加一个按钮 或按钮组 到多个内置选项卡 例如 我的按钮应该在两个中都可用新邮件消息功能区 and in 新预约丝带 我尝试添加一个新选项卡 在视觉设计器中 但这似乎不起作用
  • 使用本地文件作为

    是否可以使用用户硬盘中的音频文件作为srcHTML5 的属性
  • 未知的 UTF-8 代码单元闭合双引号

    我的问题如下 我正在读取一个 XML 文件 其文本节点部分包含 UTF 8 版本的打开和关闭双引号 文本被提取 缩短为 3999 字节并放入新的 XML 格式 然后保存为文件 虽然 Notepad 在输入文件中正确显示了这两个符号 但输出文