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

C#学习之数据转换

目录

一、创作说明

二、数据类型之间的转换

1.数据类型之间的转换表格

2.代码示例

三、进制之间的转换

1.进制之间的转换表格

2.代码示例

四、ASCII 编码和字符之间的转换

1.ASCII 编码和字符之间的转换表格

2.代码示例

五、总结


一、创作说明

C#大多数时候都是和各种数据打交道,本文汇总数据转换的表格,包括常用方法、代码示例以及详细描述。涵盖了数据类型之间的转换、进制之间的转换、ASCII 编码和字符之间的转换。

二、数据类型之间的转换

1.数据类型之间的转换表格

转换类型方法代码示例说明
字符串转整数int.Parse()int num = int.Parse("123");将字符串转换为整数,失败时抛出异常。
int.TryParse()bool success = int.TryParse("123", out int num);尝试将字符串转换为整数,返回是否成功。
字符串转浮点数double.Parse()double num = double.Parse("123.45");将字符串转换为浮点数,失败时抛出异常。
double.TryParse()bool success = double.TryParse("123.45", out double num);尝试将字符串转换为浮点数,返回是否成功。
整数转字符串ToString()string str = 123.ToString();将整数转换为字符串。
浮点数转字符串ToString()string str = 123.45.ToString();将浮点数转换为字符串。
字符串转布尔值bool.Parse()bool flag = bool.Parse("true");将字符串转换为布尔值,失败时抛出异常。
bool.TryParse()bool success = bool.TryParse("true", out bool flag);尝试将字符串转换为布尔值,返回是否成功。
布尔值转字符串ToString()string str = true.ToString();将布尔值转换为字符串。
字符串转日期时间DateTime.Parse()DateTime date = DateTime.Parse("2023-10-05");将字符串转换为日期时间,失败时抛出异常。
DateTime.TryParse()bool success = DateTime.TryParse("2023-10-05", out DateTime date);尝试将字符串转换为日期时间,返回是否成功。
日期时间转字符串ToString()string str = DateTime.Now.ToString("yyyy-MM-dd");将日期时间格式化为字符串。
整数转浮点数隐式转换double num = 123;整数可以隐式转换为浮点数。
浮点数转整数显式转换int num = (int)123.45;浮点数需要显式转换为整数,小数部分会被截断。
字符转整数强制转换int asciiValue = (int)'A';将字符转换为对应的 ASCII 值。
整数转字符强制转换char asciiChar = (char)65;将整数转换为对应的 ASCII 字符。
对象转字符串ToString()string str = someObject.ToString();调用对象的 ToString() 方法转换为字符串。
字符串转字节数组Encoding.UTF8.GetBytes()byte[] bytes = Encoding.UTF8.GetBytes("Hello");将字符串转换为字节数组(UTF-8 编码)。
字节数组转字符串Encoding.UTF8.GetString()string str = Encoding.UTF8.GetString(bytes);将字节数组转换为字符串(UTF-8 编码)。

2.代码示例

using System;

class Program
{
    static void Main()
    {
        // 字符串转整数
        int num1 = int.Parse("123");
        bool success = int.TryParse("123", out int num2);

        // 整数转字符串
        string str1 = 123.ToString();

        // 字符串转浮点数
        double num3 = double.Parse("123.45");
        bool success2 = double.TryParse("123.45", out double num4);

        // 浮点数转字符串
        string str2 = 123.45.ToString();

        // 字符串转布尔值
        bool flag1 = bool.Parse("true");
        bool success3 = bool.TryParse("true", out bool flag2);

        // 布尔值转字符串
        string str3 = true.ToString();

        // 字符串转日期时间
        DateTime date1 = DateTime.Parse("2023-10-05");
        bool success4 = DateTime.TryParse("2023-10-05", out DateTime date2);

        // 日期时间转字符串
        string str4 = DateTime.Now.ToString("yyyy-MM-dd");

        // 整数转浮点数
        double num5 = 123;

        // 浮点数转整数
        int num6 = (int)123.45;

        // 字符转整数
        int asciiValue = (int)'A';

        // 整数转字符
        char asciiChar = (char)65;

        // 对象转字符串
        string str5 = new object().ToString();

        // 字符串转字节数组
        byte[] bytes = Encoding.UTF8.GetBytes("Hello");

        // 字节数组转字符串
        string str6 = Encoding.UTF8.GetString(bytes);
    }
}

三、进制之间的转换

1.进制之间的转换表格

转换类型方法代码示例说明
十进制转二进制Convert.ToString()string binary = Convert.ToString(10, 2);将十进制数转换为二进制字符串。
二进制转十进制Convert.ToInt32()int decimalNum = Convert.ToInt32("1010", 2);将二进制字符串转换为十进制数。
十进制转十六进制Convert.ToString()string hex = Convert.ToString(255, 16);将十进制数转换为十六进制字符串。
十六进制转十进制Convert.ToInt32()int decimalNum = Convert.ToInt32("FF", 16);将十六进制字符串转换为十进制数。

2.代码示例

using System;

class Program
{
    static void Main()
    {
        // 十进制转二进制
        string binary = Convert.ToString(10, 2); // 输出: "1010"

        // 二进制转十进制
        int decimalNum1 = Convert.ToInt32("1010", 2); // 输出: 10

        // 十进制转十六进制
        string hex = Convert.ToString(255, 16); // 输出: "ff"

        // 十六进制转十进制
        int decimalNum2 = Convert.ToInt32("FF", 16); // 输出: 255
    }
}

四、ASCII 编码和字符之间的转换

1.ASCII 编码和字符之间的转换表格

转换类型方法代码示例说明
字符转 ASCII 值强制转换int asciiValue = (int)'A';将字符转换为对应的 ASCII 值。
ASCII 值转字符强制转换char asciiChar = (char)65;将 ASCII 值转换为对应的字符。
字符串转 ASCII 数组Encoding.ASCII.GetBytes()byte[] asciiBytes = Encoding.ASCII.GetBytes("Hello");将字符串转换为 ASCII 字节数组。
ASCII 数组转字符串Encoding.ASCII.GetString()string str = Encoding.ASCII.GetString(asciiBytes);将 ASCII 字节数组转换为字符串。

2.代码示例

using System;
using System.Text;

class Program
{
    static void Main()
    {
        // 字符转 ASCII 值
        int asciiValue = (int)'A'; // 输出: 65

        // ASCII 值转字符
        char asciiChar = (char)65; // 输出: 'A'

        // 字符串转 ASCII 数组
        byte[] asciiBytes = Encoding.ASCII.GetBytes("Hello");

        // ASCII 数组转字符串
        string str = Encoding.ASCII.GetString(asciiBytes); // 输出: "Hello"
    }
}

五、总结

  • 数据类型之间的转换可以通过 Parse()TryParse()ToString() 等方法实现。

  • 进制之间的转换可以使用 Convert.ToString() 和 Convert.ToInt32()

  • ASCII 编码和字符之间的转换可以通过强制类型转换或 Encoding.ASCII 实现。

相关文章:

  • python defaultdict用法
  • ios中常见的设计原则和设计模式
  • Hadoop集群安装与配置指南(CentOS 7)
  • 力扣LeetCode: 1742 盒子中小球的最大数量
  • 5-CDE说明
  • buu-jarvisoj_level2_x64-好久不见37
  • Ubuntu 上安装 Elasticsearch 7.6.0
  • 计算机毕业设计--基于深度学习技术(Yolov11、v8、v7、v5)算法的高效人脸检测模型设计与实现(含Github代码+Web端在线体验界面)
  • 接入 SSL 认证配置:满足等保最佳实践
  • 神经网络常见激活函数 12-Swish函数
  • 动态规划 之 排列与组合问题
  • SpringBoot(接受参数相关注解)
  • Unity序列化多态数组
  • PyQt6/PySide6 的 QThread 类
  • 18.Python实战:实现年会抽奖系统
  • 计算机网络原理试题二
  • 1317:【例5.2】组合的输出
  • Spring Boot中如何自定义Starter
  • DC-6靶机渗透测试全过程
  • matlab平面波展开法计算的二维声子晶体带隙
  • 首批证券公司科创债来了!拟发行规模超160亿元
  • 对话哭泣照被恶意盗用成“高潮针”配图女生:难过又屈辱
  • 黄晨光任中科院空间应用工程与技术中心党委书记、副主任
  • 现场|万米云端,遇见上博
  • 巴基斯坦军方称印度袭击已致26死46伤
  • 金球看淡,不服就干!这是抬不起腿却昂着头的劳塔罗