将给定的char变量转换为字符串,表示它';s代码在我的编码中

本文关键字:代码 编码 我的 表示 char 变量 转换 字符串 | 更新日期: 2023-09-27 17:58:52

我想写一个txt文件。一些字符需要以某种方式转义:'''c1,其中c1是编码1251的字符的代码。

如何将给定的字符变量转换为字符串,在我的编码中表示它的代码?

我为utf找到了一种方法,但对其他ecnodings没有办法。对于utf变体,有Char.ConvertToUtf32()方法。

将给定的char变量转换为字符串,表示它';s代码在我的编码中

// get the encoding
Encoding encoding = Encoding.GetEncoding(1251);
// for each character you want to encode
byte b = encoding.GetBytes("" + c)[0];
string hex = b.ToString("x");
string output = @"''" + hex;

如何将给定的字符变量转换为字符串,在我的编码中表示它的代码?

试试这样的东西:

    var enc = Encoding.GetEncoding("Windows-1251");
    char myCharacter = 'д'; // Cyrillic 'd'
    byte code = enc.GetBytes(new[] { myCharacter, })[0];
    Console.WriteLine(code.ToString());      // "228" (decimal)
    Console.WriteLine(code.ToString("X2"));  // "E4" (hex)