1
0
mirror of https://github.com/zhaopeiym/IoTClient synced 2025-10-26 22:15:44 +08:00
IoTClient/IoTClient.Tool/Common/Helper/StringExtension.cs
2019-11-02 10:24:04 +08:00

56 lines
1.8 KiB
C#

using System;
namespace IoTClient.Tool.Helper
{
public static class StringExtension
{
/// <summary>
/// 转出对应数据类型
/// </summary>
/// <param name="str"></param>
/// <param name="type"></param>
/// <returns></returns>
public static object ToDataFormType(this string str, Type type)
{
str = str?.Trim();
try
{
switch (Type.GetTypeCode(type))
{
case TypeCode.Boolean:
return bool.Parse(str);
case TypeCode.Byte:
return byte.Parse(str);
case TypeCode.Char:
return char.Parse(str);
case TypeCode.DateTime:
return DateTime.Parse(str);
case TypeCode.Decimal:
return decimal.Parse(str);
case TypeCode.Double:
return double.Parse(str);
case TypeCode.Int16:
return short.Parse(str);
case TypeCode.Int32:
return int.Parse(str);
case TypeCode.Int64:
return long.Parse(str);
case TypeCode.SByte:
return sbyte.Parse(str);
case TypeCode.Single:
return float.Parse(str);
case TypeCode.UInt16:
return ushort.Parse(str);
case TypeCode.UInt32:
return uint.Parse(str);
case TypeCode.UInt64:
return ulong.Parse(str);
}
}
catch
{ }
return str;
}
}
}