C#实现一个相当全面的数据转换工具类

 更新时间:2025年03月06日 10:29:17   作者:WangMing_X  
这篇文章主要为大家介绍了如何使用C#编写一个通用工具类DataConvert来进行数据转换,包括30+个数据类型转换,需要的可以了解一下

C#通用工具类DataConvert,作为静态类全局可调用,来进行数据转换。包括byte[]转数字、CSV、数字转byte[]、16进制数转换、TryParse、DateTime等。

一、具体函数列表

default部分函数

//default
 
public static string ArrayToString<T>(T[] array)
public static string ListToString<T>(List<T> list)

byte[]转数字部分函数

//byte[]转数字
 
/// <summary>
/// byte数组中取int数值,本方法适用于(低位在前,高位在后)的顺序
/// </summary>
/// <param name="src">byte数组 </param>
/// <param name="offset"> 从数组的第offset位开始 </param>
/// <returns>int数值</returns>
public static int BytesToInt32(byte[] src, int offset)
 
/// <summary>
///  byte数组中取int数值,本方法适用于(低位在后,高位在前)的顺序
/// </summary>
/// <param name="src"></param>
/// <param name="offset"></param>
/// <returns></returns>
public static int BytesToInt32R(byte[] src, int offset)
 
/// <summary>
/// byte数组中取short数值,本方法适用于(低位在前,高位在后)的顺序
/// </summary>
/// <param name="src"></param>
/// <param name="offset"></param>
/// <returns></returns>
public static short BytesToInt16(byte[] src, int offset)
 
/// <summary>
/// byte数组中取short数值,本方法适用于(低位在后,高位在前)的顺序
/// </summary>
/// <param name="src"></param>
/// <param name="offset"></param>
/// <returns></returns>
public static short BytesToInt16R(byte[] src, int offset)

数字转byte[]部分函数

/// <summary>
/// Int16转换成byte[] (低位在前,高位在后)的顺序
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
public static byte[] Int16ToBytes(short num)
 
/// <summary>
/// Int16转换成byte[] (低位在后,高位在前)的顺序
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
public static byte[] Int16ToBytesR(short num)
 
/// <summary>
/// Int32转换成byte[] (低位在前,高位在后)的顺序
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
 public static byte[] Int32ToBytes(int num)
 
/// <summary>
/// Int32转换成byte[] (低位在后,高位在前)的顺序
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
public static byte[] Int32ToBytesR(int num)
 

16进制数转换部分函数

public static string byteArrayToHexString(byte[] data)
 
public static byte[] StrToHexBytes(string hexString)
 
 /// <summary>
 /// "03E8"→1000
 /// </summary>
 /// <param name="hex"></param>
 /// <returns></returns>
 public static int HexToDecimal(string hex)
 

TryParse部分函数

public static bool BoolTryParse(string str, ref bool value)
 
public static bool ByteTryParse(string str, ref byte value)
 
public static bool ShortTryParse(string str, ref short value)
 
public static bool UshortTryParse(string str, ref ushort value)
 
public static bool IntTryParse(string str, ref int value)
 
public static bool FloatTryParse(string str, ref float value)
 
public static bool DoubleTryParse(string str, ref double value)
 
public static bool EnumTryParse<T>(string str, ref T value)

DateTime部分函数

 private static readonly DateTime
 /// <summary>
 /// DateTime转10位时间戳
 /// </summary>
 /// <param name="dateTime"></par
 /// <returns></returns>
public static long DateTimeToTimeStamp10(DateTime dateTime)
 
/// <summary>
/// DateTime转13位时间戳
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static long DateTimeToTimeStamp13(DateTime dateTime)
 
/// <summary>
/// 10位时间戳转DateTime
/// </summary>
/// <param name=”timeStamp”></param>
/// <returns></returns>
public static DateTime TimeStamp10ToDateTime(long timeStamp)
 
/// <summary>
/// 13位时间戳转DateTime
/// </summary>
/// <param name=”timeStamp”></param>
/// <returns></returns>
public static DateTime TimeStamp13ToDateTime(long timeStamp)
 

二、函数调用示例

1、引用DataConvert类的命名空间(或修改类文件的命名空间为当前项目)

2、在引用了DataConvert命名空间的项目里面直接用类名点出内部的转换函数

int rssi= DataConvert.HexToDecimal(“C3”);

以上就是C#实现一个相当全面的数据转换工具类的详细内容,更多关于C#数据转换的资料请关注脚本之家其它相关文章!

相关文章

  • C#获取项目指定目录下文件的方法

    C#获取项目指定目录下文件的方法

    这篇文章主要介绍了C#获取项目指定目录下文件的方法,涉及C#操作目录及文件的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • 简单对比C#程序中的单线程与多线程设计

    简单对比C#程序中的单线程与多线程设计

    这篇文章主要介绍了C#程序中的单线程与多线程设计的简单对比,通过实际的代码演示可以清晰看出多线程并发来避免单线程阻塞问题的特点,需要的朋友可以参考下
    2016-04-04
  • c#多线程通信之委托事件

    c#多线程通信之委托事件

    这篇文章主要介绍了c#多线程通信之委托事件,对多线程感兴趣的同学可以参考下
    2021-04-04
  • C#之lock的使用及说明

    C#之lock的使用及说明

    这篇文章主要介绍了C#之lock的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Unity 百度AI实现Logo商标识别

    Unity 百度AI实现Logo商标识别

    本文主要介绍了Unity实现检测和识别图片中的品牌LOGO信息。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中LOGO的名称、位置和置信度。需要的可以参考一下
    2022-01-01
  • C#中静态构造函数的几点说明介绍

    C#中静态构造函数的几点说明介绍

    本篇文章主要是对C#中静态构造函数的几点说明进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • 轻松学习C#的正则表达式

    轻松学习C#的正则表达式

    轻松学习C#的正则表达式,对C#的正则表达式感兴趣的朋友可以参考本篇文章,帮助大家更灵活的运用C#的正则表达式
    2015-11-11
  • Unity3D 计时器的实现代码(三种写法总结)

    Unity3D 计时器的实现代码(三种写法总结)

    这篇文章主要介绍了Unity3D 计时器的实现代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • C# PaddleOCRSharp OCR进行疲劳测试

    C# PaddleOCRSharp OCR进行疲劳测试

    PaddleOCRSharp 是百度飞桨封装的.NET版本 OCR dll 类库,OCR可以将图像文件中的文本内容进行识别,下面我们就来看看如何通过它们实现疲劳测试吧
    2024-11-11
  • C# WinForm控件对透明图片重叠时出现图片不透明的简单解决方法

    C# WinForm控件对透明图片重叠时出现图片不透明的简单解决方法

    这篇文章主要介绍了C# WinForm控件对透明图片重叠时出现图片不透明的简单解决方法,结合实例形式分析了WinForm图片重叠后造成图片不透明的原因与相应的解决方法,需要的朋友可以参考下
    2016-06-06

最新评论