通常,不可能仅仅基于可以表示文本的字节流来确定所使用的确切编码.但是,如果某处有字节顺序标记,您至少可以使用它作为使用什么编码的提示.
但是,如果文本的制作者和消费者之间没有任何提示或某种合同/交换元数据,那么你就无法100%肯定.您可以尝试使用启发式算法,但如果您最终猜错了,那么您会遇到这些问题.
如果您想要确定,请在文本的生产者和使用者之间设置某种协议或契约,以便知道文本和编码方案.您可以对编码方案进行硬编码(例如,您的程序可能会解析UTF-8并且只能解析UTF-8),或者确保文本的生成者始终在前面添加字节顺序标记或专门设计的头字节来传达编码方案.
| 归档时间: |
|
| 查看次数: |
291 次 |
| 最近记录: |