You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
6.1 KiB
182 lines
6.1 KiB
using System;
|
|
|
|
namespace SiteServer.Utils
|
|
{
|
|
/// <summary>
|
|
/// 用于把对象型数据转成特定数据类型的类
|
|
/// </summary>
|
|
public class ConvertHelper
|
|
{
|
|
#region 将对象变量转成字符串变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成字符串变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>字符串变量</returns>
|
|
public static string GetString(object obj)
|
|
{
|
|
return (obj == DBNull.Value || obj == null) ? "" : obj.ToString();
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成32位整数型变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成32位整数型变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>32位整数型变量</returns>
|
|
public static int GetInteger(object obj)
|
|
{
|
|
return ConvertStringToInteger(GetString(obj));
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成64位整数型变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成64位整数型变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>64位整数型变量</returns>
|
|
public static long GetLong(object obj)
|
|
{
|
|
return ConvertStringToLong(GetString(obj));
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成双精度浮点型变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成双精度浮点型变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>双精度浮点型变量</returns>
|
|
public static double GetDouble(object obj)
|
|
{
|
|
return ConvertStringToDouble(GetString(obj));
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成十进制数字变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成十进制数字变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>十进制数字变量</returns>
|
|
public static decimal GetDecimal(object obj)
|
|
{
|
|
return ConvertStringToDecimal(GetString(obj));
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成布尔型变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成布尔型变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>布尔型变量</returns>
|
|
public static bool GetBoolean(object obj)
|
|
{
|
|
return (obj == DBNull.Value || obj == null) ? false :
|
|
GetString(obj).ToLower() == "true" ? true : false;
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成日期时间型字符串变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成日期时间型字符串变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <param name="sFormat">时间字符串格式,例:yyyy-MM-dd</param>
|
|
/// <returns>时间型字符串变量</returns>
|
|
public static string GetDateTimeString(object obj, string sFormat)
|
|
{
|
|
return GetDateTime(obj).ToString(sFormat);
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成日期字符串变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成日期字符串变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>日期字符串变量</returns>
|
|
public static string GetShortDateString(object obj)
|
|
{
|
|
return GetDateTimeString(obj, "yyyy-MM-dd");
|
|
}
|
|
#endregion
|
|
|
|
#region 将对象变量转成日期型变量的方法
|
|
/// <summary>
|
|
/// 将对象变量转成日期型变量的方法
|
|
/// </summary>
|
|
/// <param name="obj">对象变量</param>
|
|
/// <returns>日期型变量</returns>
|
|
public static DateTime GetDateTime(object obj)
|
|
{
|
|
DateTime result;
|
|
DateTime.TryParse(GetString(obj), out result);
|
|
return result;
|
|
}
|
|
#endregion
|
|
|
|
#region 私有方法
|
|
|
|
#region 将字符串转成32位整数型变量的方法
|
|
/// <summary>
|
|
/// 将字符串转成32位整数型变量的方法
|
|
/// </summary>
|
|
/// <param name="s">字符串</param>
|
|
/// <returns>32位整数型变量</returns>
|
|
private static int ConvertStringToInteger(string s)
|
|
{
|
|
int result;
|
|
int.TryParse(s, out result);
|
|
return result;
|
|
}
|
|
#endregion
|
|
|
|
#region 将字符串转成64位整数型变量的方法
|
|
/// <summary>
|
|
/// 将字符串转成64位整数型变量的方法
|
|
/// </summary>
|
|
/// <param name="s">字符串</param>
|
|
/// <returns>64位整数型变量</returns>
|
|
private static long ConvertStringToLong(string s)
|
|
{
|
|
long result;
|
|
long.TryParse(s, out result);
|
|
return result;
|
|
}
|
|
#endregion
|
|
|
|
#region 将字符串转成双精度浮点型变量的方法
|
|
/// <summary>
|
|
/// 将字符串转成双精度浮点型变量的方法
|
|
/// </summary>
|
|
/// <param name="s">字符串</param>
|
|
/// <returns>双精度浮点型变量</returns>
|
|
private static double ConvertStringToDouble(string s)
|
|
{
|
|
double result;
|
|
double.TryParse(s, out result);
|
|
return result;
|
|
}
|
|
#endregion
|
|
|
|
#region 将字符串转成十进制数字变量的方法
|
|
/// <summary>
|
|
/// 将字符串转成十进制数字变量的方法
|
|
/// </summary>
|
|
/// <param name="s">字符串</param>
|
|
/// <returns>十进制数字变量</returns>
|
|
private static decimal ConvertStringToDecimal(string s)
|
|
{
|
|
decimal result;
|
|
decimal.TryParse(s, out result);
|
|
return result;
|
|
}
|
|
#endregion
|
|
|
|
#endregion
|
|
}
|
|
}
|