木子屋 Dnawo's BLOG

C#常用自定义类型转换函数

👤 dnawo 📅 2008-03-26 👁 7567 👍 0 💬 0 🔄 来源:本站原创
/// <summary>
/// 将字符型类型转换为整型值
/// </summary>
/// <param name="objValue">字符型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>整型值</returns>
public static int IntParse(string objValue, int defaultValue)
{
    int returnValue = defaultValue;
    if (!string.IsNullOrEmpty(objValue))
    {
        try
        {
            returnValue = int.Parse(objValue);
        }
        catch
        {
            returnValue = defaultValue;
        }
    }

    return returnValue;
}

/// <summary>
/// 将对象类型转换为整型值
/// </summary>
/// <param name="objValue">对象类型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>整型值</returns>
public static int IntParse(object objValue, int defaultValue)
{
    int returnValue = defaultValue;

    if (objValue != null && objValue != DBNull.Value)
    {
        try
        {
            returnValue = int.Parse(objValue.ToString());
        }
        catch
        {
            returnValue = defaultValue;
        }
    }

    //返回值
    return returnValue;
}

/// <summary>
/// 将对象类型转换为整型值
/// </summary>
/// <param name="objValue">对象类型</param>
/// <returns>整型值</returns>
public static int IntParse(object objValue)
{
    return IntParse(objValue, 0);
}
/// <summary>
/// 将对象类型转换为日期值
/// </summary>
/// <param name="objValue">对象类型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>日期值</returns>
public static DateTime DateTimeParse(object objValue, DateTime defaultValue)
{
    DateTime returnValue = defaultValue;

    if (objValue != null && objValue != DBNull.Value)
    {
        try
        {
            returnValue = DateTime.Parse(objValue.ToString());
        }
        catch
        {
            returnValue = defaultValue;
        }
    }

    //返回值
    return returnValue;
}

/// <summary>
/// 将对象类型转换为日期值
/// </summary>
/// <param name="objValue">对象类型</param>
/// <returns>日期值</returns>
public static DateTime DateTimeParse(object objValue)
{
    return DateTimeParse(objValue, DateTime.MinValue);
}


/// <summary>
/// 将对象类型转换为字符型
/// </summary>
/// <param name="objValue">对象类型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>字符型</returns>
public static string StringParse(object objValue, string defaultValue)
{
    string returnValue = defaultValue;

    if (objValue != null && objValue != DBNull.Value)
    {
        try
        {
            returnValue = objValue.ToString();
        }
        catch
        {
            returnValue = defaultValue; ;
        }

    }

    //返回值
    return returnValue;
}

/// <summary>
/// 将对象类型转换为字符型
/// </summary>
/// <param name="objValue">对象类型</param>
/// <returns>字符型</returns>
public static string StringParse(object objValue)
{
    return StringParse(objValue, string.Empty);
}


/// <summary>
/// 将对象类型转换为GUID
/// </summary>
/// <param name="objValue">对象类型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>GUID</returns>
public static Guid GuidParse(object objValue, Guid defaultValue)
{
    Guid returnValue = defaultValue;

    if (objValue != null && objValue != DBNull.Value)
    {
        try
        {
            returnValue = new Guid(objValue.ToString());
        }
        catch
        {
            returnValue = defaultValue; ;
        }

    }

    //返回值
    return returnValue;
}


/// <summary>
/// 将对象类型转换为GUID
/// </summary>
/// <param name="objValue">对象类型</param>
/// <returns>GUID</returns>
public static Guid GuidParse(object objValue)
{
    return GuidParse(objValue, Guid.Empty);
}

/// <summary>
/// 类型转换函数
/// </summary>
/// <typeparam name="T">目标类型值</typeparam>
/// <param name="objValue">对象类型</param>
/// <param name="defaultValue">无法转换时的默认值</param>
/// <returns>目标类型值</returns>
public static T Parse<T>(object objValue, T defaultValue)
{
    T returnValue = defaultValue;

    if (objValue != null && objValue != DBNull.Value)
    {
        try
        {
            returnValue = (T)objValue;
        }
        catch
        {
            returnValue = defaultValue;
        }
    }

    //返回值
    return returnValue;
}

/// <summary>
/// 类型转换函数
/// </summary>
/// <typeparam name="T">目标类型值</typeparam>
/// <param name="objValue">对象类型</param>
/// <returns>目标类型值</returns>
public static T Parse<T>(object objValue)
{
    return Parse<T>(objValue, default(T));
}

评论(0)

暂无评论。

验证码
评论需审核通过后显示
← 上一篇 C#泛型简介 下一篇 → C#图像处理类