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 格式数据分隔逗号(,)…...
使用 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…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
