gpt4 book ai didi

C# WriteAllBytes 忽略字符编码

转载 作者:行者123 更新时间:2023-11-30 15:16:23 25 4
gpt4 key购买 nike

我正在使用以下代码:

File.WriteAllBytes("c:\\test.xml", Encoding.UTF8.GetBytes("THIS IS A TEST"))

理论上应该写一个 UTF8 文件,但我只得到一个 ANSI 文件。我也试过这个只是为了特别冗长;

File.WriteAllBytes("c:\\test.xml", ASCIIEncoding.Convert(ASCIIEncoding.ASCII, UTF8Encoding.UTF8, Encoding.UTF8.GetBytes("THIS IS A TEST")))

还是一样的问题

我正在通过加载正确读取格式的 TextPad 来测试输出的文件(我使用示例文件进行了测试,因为我知道这些东西有时会有点奇怪)

最佳答案

WriteAllBytes 不是忽略编码 - 而是:您已经完成编码,当您调用 GetBytesWriteAllBytes 的全部意义在于它写入字节。字节没有编码;相反:编码是将文本(此处为string)转换为字节(此处为byte[])的过程。

对于所有 ASCII 字符,UTF-8 与 ASCII 相同 - 即 0-127。 "THIS IS A TEST" 的所有内容都是纯 ASCII,因此 UTF-8 和 ASCII 是相同的。

关于C# WriteAllBytes 忽略字符编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49758591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com