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

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("中文测试");

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

相关文章:

  • UniApp 按钮组件 open-type 属性详解:功能、场景与平台差异
  • c#实现modbus rtu定时采集数据
  • Spring AI:让AI应用开发更简单
  • JavaScript系列03-异步编程全解析
  • 【Markdown 语法简洁讲解】
  • OpenHarmony启动系统-U-Boot简介和源码下载与编译
  • CMU15445(2023fall) Project #4 - Concurrency Control踩坑历程
  • Spring Boot 日志配置与常见问题解析(详解)
  • 【PHP脚本语言详解】为什么直接访问PHP文件会显示空白?从错误示例到正确执行!
  • mysql内置工具导入csv包,简单便捷高效
  • 蓝桥杯C语言组:基于蓝桥杯煤球数目问题的数列累加解决方案研究
  • 基于springboot的高校物品捐赠系统
  • C++ Qt OpenGL渲染FFmpeg解码后的视频
  • Vue+Elementui 全局配置el-table表格列宽可拖拽
  • 如何快速的解除oracle dataguard
  • python项目依赖哪些whl
  • Pwntools 的详细介绍、安装指南、配置说明
  • Unity Burst编译
  • DeepSeek助力科研:文献处理新方式
  • git管理的项目 发布时有收费版/免费版/客户定制版,如何管理分支,通过merge(合并) 还是 cherry-pick(挑拣) 引入更新的代码?
  • 做整体衣柜宣传海报的网站/网络营销创意案例
  • 我想注册网站怎么做/网络推广合作协议范本
  • 局政府网站建设管理制度/关键词优化推广
  • 深圳做外贸网站/站长之家站长工具
  • 云南省建设工程信息服务平台/标题优化seo
  • 网站建设案例教程视频教程/seo快照推广