当前位置: 首页 > 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 实现。

相关文章:

C#学习之数据转换

目录 一、创作说明 二、数据类型之间的转换 1.数据类型之间的转换表格 2.代码示例 三、进制之间的转换 1.进制之间的转换表格 2.代码示例 四、ASCII 编码和字符之间的转换 1.ASCII 编码和字符之间的转换表格 2.代码示例 五、总结 一、创作说明 C#大多数时候都是和各…...

typecho快速发布文章

typecho_Pytools typecho_Pytools工具由python编写,可以快速批量的在本地发布文章,不需要登陆后台粘贴md文件内容,同时此工具还能查看最新的评论消息。… 开源地址: GitHub Gitee 使用教学:B站 一、主要功能 所有操作不用登陆博…...

深度学习R4周:LSTM-火灾温度预测

🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 任务: 数据集中提供了火灾温度(Tem1)、一氧化碳浓度(CO 1)烟雾浓度(Soot 1)…...

探索Java中的集合类_特性与使用场景

1. 引言 1.1 Java集合框架概述 Java集合框架(Java Collections Framework, JCF)是Java中用于存储和操作一组对象的类和接口的统称。它提供了多种数据结构来满足不同的需求,如列表、集合、映射等。JCF的核心接口包括Collection、List、Set、Queue和Map,以及它们的各种实现…...

自动化遇到的问题记录(遇到问题就更)

总结回归下自己这边遇到的一些问题 “EOF错误”,获取不到csv里面的内容 跑多csv文件里的场景,部分场景的请求值为 1、检查csv文件里不能直接是[]开头的参数,把[]改到ms平台的请求参数里 2、有时可能是某个参数值缺了双引号的其中一边 met…...

【云安全】云原生- K8S kubeconfig 文件泄露

什么是 kubeconfig 文件? kubeconfig 文件是 Kubernetes 的配置文件,用于存储集群的访问凭证、API Server 的地址和认证信息,允许用户和 kubectl 等工具与 Kubernetes 集群进行交互。它通常包含多个集群的配置,支持通过上下文&am…...

【愚公系列】《Python网络爬虫从入门到精通》008-正则表达式基础

标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…...

【Linux】Ext2文件系统、软硬链接

Ext2文件系统 一.理解硬件1.磁盘、服务器、机柜、机房2.磁盘的物理结构3.磁盘的存储结构4.磁盘的逻辑结构1.理解过程2.真实过程 5.CHS地址、LBA地址转换 二.引入文件系统1.引入"块"概念2.引入"分区"概念3.引入"inode"概念 三.Ext2文件系统1.宏观…...

ATF系统安全从入门到精通

CSDN学院课程连接:https://edu.csdn.net/course/detail/39573...

【算法专场】哈希表

目录 前言 哈希表 1. 两数之和 - 力扣(LeetCode) 算法分析 算法代码 面试题 01.02. 判定是否互为字符重排 ​编辑算法分析 算法代码 217. 存在重复元素 算法分析 算法代码 219. 存在重复元素 II 算法分析 算法代码 解法二 算法代码 算法…...

Beszel监控Docker安装

一、Beszel Hub安装 #Beszel Hub安装 mkdir -p ./beszel_data && \ docker run -d \--name beszel \--restartunless-stopped \-v ./beszel_data:/beszel_data \-p 8090:8090 \henrygd/beszel#创建账号 账号/密码:adminadmin.com/adminadmin.com 二、Besz…...

如何学习Elasticsearch(ES):从入门到精通的完整指南

如何学习Elasticsearch(ES):从入门到精通的完整指南 嘿,小伙伴们!如果你对大数据搜索和分析感兴趣,并且想要掌握Elasticsearch这一强大的分布式搜索引擎,那么你来对地方了!本文将为…...

【mybatis】基本操作:详解Spring通过注解和XML的方式来操作mybatis

mybatis 的常用配置 配置数据库连接 #驱动类名称 spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver #数据库连接的url spring.datasource.urljdbc:mysql://127.0.0.1:3306/mybatis_test characterEncodingutf8&useSSLfalse #连接数据库的名 spring.datasourc…...

CSV格式和普通EXCEL格式文件的区别

CSV 文件(.csv) 普通的 Excel 文件(.xlsx 或 .xls) 主要体现在 文件格式、数据存储、功能支持 等方面: 文件格式 比较项CSV 文件 (.csv)Excel 文件 (.xlsx/.xls)文件类型纯文本文件二进制或 XML 格式数据分隔逗号(,&#xff09…...

使用 Vite + React 19 集成 Tailwind CSS 与 shadcn/ui 组件库完整指南

使用 Vite React 19 集成 Tailwind CSS 与 shadcn/ui 组件库完整指南 🌟 前言一、创建 React 19 项目二、集成 Tailwind CSS1️⃣ 安装依赖2️⃣ 配置 Vite 插件3️⃣ 引入 Tailwind4️⃣ 启动项目 三、配置路径别名1️⃣ 修改 TypeScript 配置2️⃣ 安装类型声明3…...

【java】基本数据类型和引用数据类型

在 Java 中,数据类型分为 基本数据类型 和 引用数据类型。它们的本质区别在于存储方式和操作方式。下面我会详细解释这两种数据类型,并用通俗易懂的语言帮助你理解。 1. 基本数据类型(Primitive Data Types) 基本数据类型是 Java…...

mybatis-lombok工具包介绍

Lombok是一个实用的]ava类库,能通过注解的形式自动生成构造器、getter/setter、equals、hashcode、toString等方法,并可以自动化生成日志变量,简化java开发、提高效率。 使用前要加入Lombok依赖...

2. grafana插件安装并接入zabbix

一、在线安装 如果不指定安装位置,则默认安装位置为/var/lib/grafana/plugins 插件安装完成之后需要重启grafana 命令在上一篇讲到过 //查看相关帮助 [rootlocalhost ~]# grafana-cli plugins --help //从列举中的插件过滤zabbix插件 [rootlocalhost ~]# grafana…...

零基础学CocosCreator·第九季-网络游戏同步策略与ESC架构

课程里的版本好像是1.9,目前使用版本为3.8.3 开始~ 目录 状态同步帧同步帧同步客户端帧同步服务端ECS框架概念ECS的解释ECS的特点EntityComponentSystemWorld ECS实现逻辑帧&渲染帧 ECS框架使用帧同步&ECS 状态同步 一般游戏的同步策略有两种:…...

为什么配置Redis时候要序列化配置呢

序列化和反序列化?: 序列化:将对象转换为二进制数据,以便存储到Redis中。 反序列化:将Redis中的二进制数据转换回对象,以便在应用程序中使用。 1. 默认序列化器的问题 如果不配置序列化器,Re…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力

引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

2025盘古石杯决赛【手机取证】

前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...

AI编程--插件对比分析:CodeRider、GitHub Copilot及其他

AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...