繁体   English   中英

C# - 将 UTF8 字符串转换为位、修改位并转换回 UTF8 字符串

[英]C# - Convert UTF8 String into bits, modify bits, and convert back into UTF8 String

对于我正在处理的项目,我需要能够将 UTF8 字符串转换为位或字节以进行修改和返回。 (位/字节类型无关紧要.. '138' 或 '00000001' 或 '0A' - 只要我能够将其修改为字符串并将字节转换回字符串)

我尝试了几件事,但没有任何效果。 在大多数情况下,我一直在尝试获取File.ReadAllBytes(path)的结果并将字节转换为可修改的字符串并返回,但没有任何成功。 还尝试使用测试字符串到BitArray中做同样的事情,但没有更好的运气。

这是我在一个更好的例子中尝试做的事情(伪代码)

string input = "ABC";

Byte[] bytes = StringToBytes(input);
Byte[] bytes2;

string bytestring;
foreach (Byte byte in bytes) {
    bytestring = byte.ToString();
    /// modify bytestring to the value of a different byte here ///
    bytes2.Add(bytestring.ToByte());
}

return BytesToString(bytes2);

返回: 'ACD' (或其他)

如果您尝试将文件读入 byte[] 数组,修改这些字节并将其转换回字符串,则可以执行以下操作:

// read the file into a byte array
var bytes = File.ReadAllBytes(inputFileName);

// modify the bytes

// now convert back to a UTF string
var stringFromByteArray = Encoding.UTF8.GetString(bytes, 0, bytes.Length);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM