c# GB2312 字符串转byte字节
时间: 2024-10-01 11:10:59 浏览: 32
C# 16进制与字符串、字节数组之间的转换
在 C# 中,如果你有一个包含 GB2312 编码的字符串,你可以通过以下步骤将其转换为 Byte 字节数组:
1. 首先,你需要创建一个 `byte[]` 类型的数组来存储字节。
```csharp
byte[] byteArray = new byte[string.Length * 2]; // GB2312 编码每个汉字占用两个字节
```
2. 然后,使用 `GetBytes` 方法,它会将字符串转换成指定字符集的字节数组。这里指定字符集为 "GB2312"。
```csharp
string chineseString = ...; // 你的 GB2312 字符串
Encoding encoding = Encoding.GetEncoding("GB2312");
encoding.GetBytes(chineseString, 0, chineseString.Length, byteArray, 0);
```
这里的参数解释:
- `chineseString`:待编码的字符串。
- `0`:开始索引,表示从字符串的第一个字符开始处理。
- `chineseString.Length`:结束索引,表示处理到字符串的最后一个字符。
- `byteArray`:目标字节数组,会被填充字节数据。
- `0`:目标数组的开始位置。
现在 `byteArray` 就包含了原始字符串的 GB2312 编码字节了。
阅读全文