当前位置: 首页 > article >正文

C# 数据转换

1. 文本框读取byte,ushort格式数据

byte addr;
if (byte.TryParse(textBoxAddr.Text, out addr) == true)
{

}

2. 字节数组 (byte[]) 转换为 ASCII 字符串

byte[] bytes = { 72, 101, 108, 108, 111 }; // "Hello" 的 ASCII 码
string s0 = Encoding.ASCII.GetString(bytes , 0, 5);

若字节值超出 ASCII 范围(0-127),会替换为默认字符(如 ?)‌

3. 若字节数组中包含非 ASCII 字符(如中文),需先转换编码格式(如 UTF-8)再解码

byte[] mixedBytes = Encoding.UTF8.GetBytes("Hello 世界");
string decodedString = Encoding.UTF8.GetString(mixedBytes); // 正确解码中文

4. 十六进制字符串与 ASCII 的互转

将十六进制字符串(如 “48656C6C6F”)转为 ASCII 字符串

string hex = "48656C6C6F"; // "Hello" 的十六进制
byte[] hexBytes = Enumerable.Range(0, hex.Length)
    .Where(x => x % 2 == 0)
    .Select(x => Convert.ToByte(hex.Substring(x, 2), 16))
    .ToArray();
string result = Encoding.ASCII.GetString(hexBytes); // 输出: Hello

此方法常用于网络通信或二进制数据处理‌

5. string 转bytes

// UTF-8编码(汉字占3字节)
byte[] utf8Bytes = Encoding.UTF8.GetBytes("示例字符串"); 

// ASCII编码(仅支持英文字符,汉字会丢失)
byte[] asciiBytes = Encoding.ASCII.GetBytes("example");

// GB2312编码(汉字占2字节)
byte[] gb2312Bytes = Encoding.GetEncoding("gb2312").GetBytes("中文测试");

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/570313.html

相关文章:

  • 【easy视频 | day03】客户端获取视频分类 + 上传投稿
  • LeetCode 热题 100_最小栈(70_155_中等_C++)(栈)(辅助栈)(栈中的push和emplace对比)
  • 讲一下Spark的shuffle过程
  • 最节省成本的架构方案:无服务器架构
  • Redis存储⑮Redis的应用_分布式锁_Lua脚本/Redlock算法
  • 【FPGA】——verilog实现四位全加器和三八译码器
  • 使用shell脚本读elasticsearch,写msyql
  • 系统架构设计师—计算机基础篇—计算机网络
  • 对比 ThinkPHP 中间件 和 Java AOP
  • 《论云原生架构及其应用》审题技巧 - 系统架构设计师
  • Django 5实用指南(十三)安全性与防护
  • 字符串--子串匹配
  • 【Linux学习笔记】Linux基本指令及其发展史分析
  • 人工智能大模型在物联网应用层上的应用
  • MCP与RAG:增强大型语言模型的两种路径
  • 【星云 Orbit • STM32F4】04.一触即发:GPIO 外部中断
  • 网络问题排查基本命令
  • Android Studio 新版本Gradle通过JitPack发布Maven仓库示例
  • SpringBoot读取properties中文乱码解决方案
  • 【通俗讲解电子电路】——从零开始理解生活中的电路(三)