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

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#大多数时候都是和各…...

从无序到有序:上北智信通过深度数据分析改善会议室资源配置

当前企业普遍面临会议室资源管理难题,预约机制不完善和临时会议多导致资源调度不合理,既有空置又有过度拥挤现象。 针对上述问题,上北智信采用了专业数据分析手段,巧妙融合楼层平面图、环形图、折线图和柱形图等多种可视化工具&a…...

JavaScript 中toLocaleString()的基本用法

toLocaleString() 是 JavaScript 中多个内置对象(如 Number、Date、Array 等)都拥有的方法,其作用是将对象的值转换为符合特定语言环境的字符串表示形式。下面分别介绍不同对象使用该方法的具体用法。 1. Number.prototype.toLocaleString()…...

CAS单点登录(第7版)4.管理

如有疑问,请看视频:CAS单点登录(第7版) 管理 概述 Admin Console & 仪表板 CAS 提供了许多可用于管理 CAS 服务器部署的工具和控制板。此类选项通常不是互斥的,旨在协同工作并呈现 CAS 配置和构建的各个方面&am…...

Baklib一站式云平台:全场景赋能企业知识资产激活

内容概要 在数字化浪潮推动下,企业知识资产的高效管理与价值释放成为核心议题。Baklib作为一站式云平台,以全场景赋能为核心定位,通过构建知识中台架构,为企业提供从资源整合到应用落地的闭环解决方案。该平台不仅支持文本、图像…...

登录弹窗效果

1,要求 点击登录按钮,弹出登录窗口 提示1:登录窗口 display:none 隐藏状态; 提示2:登录按钮点击后,触发事件,修改 display:block 显示状态 提示3:登录窗口中点击关闭按钮&#xff0…...

文本表示方法

词向量 独热编码模型和分布式表征模型 独热编码分布式表征固定长度的稠密词向量优点一个单词一个维度,彼此之间构成标准正交向量组数字化后的数值可以表示语义上的关系缺点稀疏,词向量维度大导致计算效率低 独热编码会根据语料库中的单词个数,来确定词…...

小小小病毒(3)(~_~|)

一分耕耘一分收获 声明: 仅供损害电脑,不得用于非法。损坏电脑,作者一律不负责。此作为作者原创,转载请经过同意。 欢迎来到小小小病毒(3) 感谢大家的支持 还是那句话:上代码! …...

微软AutoGen高级功能——Memory

介绍 大家好,博主又来给大家分享知识了。这次又要给大家分享什么呢?哈哈。这次要给大家分享的是微软AutoGen框架的高级且重要的功能:Memory。在微软AutoGen中,Memory(记忆)是一个重要概念,它主要用于存储和管理智能体…...

Debezium系列之:时区转换器,时间戳字段转换到指定时区

Debezium系列之:时区转换器,时间戳字段转换到指定时区 示例:基本配置应用TimezoneConverter SMT的效果示例:高级配置配置选项当Debezium发出事件记录时,记录中的时间戳字段的时区值可能会有所不同,这取决于数据源的类型和配置。为了在数据处理管道和应用程序中保持数据一…...

【Java 面试 八股文】Spring Cloud 篇

Spring Cloud 篇 1. Spring Cloud 5大组件有哪些?2. 服务注册和发现是什么意思?Spring Cloud 如何实现服务注册发现?3. 我看你之前也用过nacos,你能说下nacos与eureka的区别?4. 你们项目负载均衡如何实现的&#xff1f…...

Esxi8.0设置nvidia显卡直通安装最新驱动

ESXI8.0设置显卡直通 在某些情况下,我们需要多次切换操作系统,以测试软件是否适用于特定系统和环境,减少多次重装系统的麻烦 ESXI8.0安装包 通过网盘分享的文件:ESXi-8.0U2-22380479-USB-NVME-集成网卡镜像.iso 链接: https://…...

LabVIEW袜品压力测试系统

开发了一种基于LabVIEW开发的袜品压力测试系统。该系统利用LabVIEW并结合灵敏的传感器和高精度的处理模块,实现了对袜品压力的精确测量和分析。系统不同于传统的服装压力测试方法,为研究和评价袜子的舒适性提供了新的测试手段。 ​ 项目背景 该系统的…...

TestHubo基础教程-创建项目

TestHubo是一款国产开源一站式测试工具,涵盖功能测试、接口测试、性能测试,以及 Web 和 App 测试,可以满足不同类型项目的测试需求。本文将介绍如何快速创建第一个项目,以快速入门上手。 1、创建项目 在 TestHubo 中,…...

3.3 企业级AI Agent工程实践:从API设计到高可用架构的全栈开发指南

企业级AI Agent工程实践:从API设计到高可用架构的全栈开发指南 引言:AI Agent开发中的工程化挑战 据2024年DevOps状态报告,AI Agent项目的失败案例中**61%**源于工程实现缺陷。本文将基于GitHub Sentinel的实战案例,揭示如何构建支持百万级请求的工业级Agent系统,涵盖AP…...

解锁二进制数组:JS、TS、ArkTS 解析

二进制数组基础入门 在编程的世界里,二进制数组就像是一把隐藏的钥匙,虽然不常被提及,但却在许多关键领域发挥着至关重要的作用。从计算机的底层硬件到前端的高性能计算,二进制数组都有着广泛的应用。 在计算机科学中&#xff0…...

C# windowForms 的DataGridView控件的使用

C# Windows Forms DataGridView 控件使用详解 DataGridView 是 Windows Forms 中用于显示和编辑表格数据的核心控件。它支持高度自定义的列类型、数据绑定、事件处理和丰富的样式配置。以下是其详细使用方法。 目录 基础使用 数据绑定 列类型与自定义...

深度求索—DeepSeek API的简单调用(Java)

DeepSeek简介 DeepSeek(深度求索)是由中国人工智能公司深度求索(DeepSeek Inc.)研发的大规模语言模型(LLM),专注于提供高效、智能的自然语言处理能力,支持多种场景下的文本生成、对…...

企业使用统一终端管理(UEM)工具提高端点安全性

什么是统一终端管理(UEM) 统一终端管理(UEM)是一种从单个控制台管理和保护企业中所有端点的方法,包括智能手机、平板电脑、笔记本电脑、台式机和 IoT设备。UEM 解决方案为 IT 管理员提供了一个集中式平台,用于跨所有作系统和设备类型部署、配置、管理和…...

Vue.js 响应式原理与数据绑定

在 Vue.js 中,响应式系统是其核心特性之一,它使得数据的变化能够自动更新到 DOM 上,实现了数据和视图的双向绑定。下面详细介绍 Vue.js 响应式系统的原理以及它是如何实现数据绑定的。 原理概述 Vue.js 的响应式系统主要基于 JavaScript 的…...

爱彼(Audemars Piguet):瑞士制表艺术的巅峰之作(中英双语)

爱彼(Audemars Piguet):瑞士制表艺术的巅峰之作 在瑞士高级制表界,Audemars Piguet(爱彼) 以其大胆创新、卓越工艺和独立家族经营的传统,成为世界顶级腕表品牌之一。作为瑞士“三大制表品牌”之…...

深入理解Elasticsearch集群与分片:原理及配置方案

一、Elasticsearch集群是什么 想象一下,你有海量的数据,比如一个超大型图书馆的所有书籍信息,要是把这些数据都放在一台电脑里,不仅存不下,而且查询起来会超级慢。Elasticsearch集群就像是一个分布式的数据图书馆系统…...

1134. 国王的魔镜

题目 AC代码 #include<bits/stdc.h> using namespace std; bool hw(char s[]) {bool rtrue;int i;for(i0;i<strlen(s)/2;i){if(s[i]!s[strlen(s)-i-1]){rfalse;break;}}return r; } int main() {char s[1005];gets(s);while(hw(s)true&&strlen(s)%20){s[strl…...

【20250215】二叉树:144.二叉树的前序遍历

# 前序遍历-递归-LC144_二叉树的前序遍历 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right # class Solution: # def pre…...

浅说树形dp

文章目录 前言树形dp的转移方式树形dp的使用的场景小结 初步感知——简单的树形dp例题1例题2 深入分析——树形dp的经典模型最大独立集最小点覆盖最小支配集树上直径 前言 因为树的形式非常适合递归&#xff0c;他所带来的访问顺序也是非常符合拓扑排序的&#xff0c;故而在处…...

DeepSeek R1本地部署 DeepSeek Api接口调用 DeepSeek RAG知识库工作流详解

DeepSeek R1本地部署 DeepSeek Api接口调用 DeepSeek RAG知识库工作流详解全集&#xff1a; 第一部分&#xff1a;Windows本地部署DeepSeek R1 第二部分&#xff1a;Macos本地部署DeepSeek R1 第三部分&#xff1a;Linux本地部署DeepSeek R1 第四部分&#xff1a;DeepSeek …...

使用Charles进行mock请求

在 Charles 中&#xff0c;“Compose”&#xff08;构建请求&#xff09;功能允许你手动创建和发送 HTTP 或 HTTPS 请求&#xff0c;方便进行 API 测试、调试等操作。以下是 Compose 功能的详细使用方式&#xff1a; 1. 打开 Compose 界面 启动 Charles 后&#xff0c;在菜单…...

linu软件编程——IO

函数接口 fputc&#xff1a; man 3 fputc 原型&#xff1a;int fputc(int c, FILE *stream); 功能: 向stream流中写入 字符c 参数&#xff1a;c:要写入的字符的ASCII码值 stream:文件流指针 返回值&#xff1a;成功返回写入字符的ASCII码值 失败返回-1 fputc(ch, stdout) put…...

RAMinit 程序编译运行考古记录

本科的时候浅浅研究了DOSBox&#xff0c;今天看到网上挺多关于雷军代码的新闻&#xff0c;我把雷军代码在web上编译出来了&#xff0c;但是我是业余选手&#xff0c;所以做得比较差&#xff0c;不过大家感兴趣可以关注我的dosplay项目&#xff0c;旨在利用js-dos实现汇编语言在…...

2.【线性代数】——矩阵消元

二 矩阵消元 1. 消元法2. 单行或者单列的矩阵乘法2.1 单行矩阵乘法2.2 单列矩阵乘法 3. 用矩阵记录消元过程&#xff08;初等矩阵&#xff09; 【行的线性组合&#xff08;数乘和加法&#xff09;】3.1 row2-3row1的矩阵描述3.2 row3-2row2的矩阵描述3.3 矩阵乘法的性质 4. 用矩…...