当前位置: 首页 > 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…...

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

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

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

Go 语言接口详解

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

微信小程序云开发平台MySQL的连接方式

注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)

目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)

RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...

力扣热题100 k个一组反转链表题解

题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...

CSS | transition 和 transform的用处和区别

省流总结&#xff1a; transform用于变换/变形&#xff0c;transition是动画控制器 transform 用来对元素进行变形&#xff0c;常见的操作如下&#xff0c;它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...