我在一款软件中遇到了与 UTF8 相关的问题 - 它抱怨一些包含特殊字符的文本不是有效的 UTF8。但每当我将其复制粘贴到在线验证工具或用户组的电子邮件中时,它都会报告为有效的 UTF8。
我怀疑它可能是某种较旧的 UTF8 之前的格式,但我想知道,一旦它进入剪贴板或粘贴到我的浏览器中,它会被转换为 UTF8 吗?这是第一个问题。
“有问题的”文本显示在 HTTP 网页中,其次,我如何才能明确地看到所显示的内容,特殊字符究竟是如何表示的?
答案1
剪贴板保存一份副本,然后稍后将其粘贴到接收应用程序中。
剪贴板不会在传输过程中改变字符编码或其他属性。
旧的特殊字符可能会导致源应用程序或接收应用程序出现问题,因此您应该更新这些字符。
答案2
Windows 中的剪贴板 API 能够在多种格式之间进行转换,但不是所有格式。
要找出剪贴板上实际放了什么,一个优秀的工具是 免费剪贴板查看器,可以帮助分析问题出在哪里。
如果这不能解决难题,请告诉我如何复制副本。作为另一项测试,您还可以复制明显是 UTF-8 的文本,例如从 Notepad++ 复制文本,其中编码设置为 UTF-8,然后在此程序中测试它(哪个是哪个?)。