zoukankan      html  css  js  c++  java
  • String转成任意基本类型

    尝试别的方法,一直找不到好的。

            /// <summary>
            
    /// 转成基本的类型(支持可空类型)
            
    /// </summary>
            public static T Convert<T>(this string str, T defaultValue)
            {
                
    if (String.IsNullOrEmpty(str))
                    
    return defaultValue;

                var type 
    = typeof(T);


                var typeName 
    = type.FullName;

                
    if (type.Name == "Nullable`1")
                {
                    var m 
    = Regex.Match(typeName, @"((?<=\[)(\w+.\w+)(?=,))");

                    type 
    = Type.GetType(m.Value);
                }


                MethodInfo method 
    = null;
                
    foreach (var m in type.GetMethods())
                {
                    
    if (m.Name == "Parse" && m.GetParameters().Length == 1)
                    {
                        method 
    = m;
                        
    break;
                    }
                }

                var result 
    = defaultValue;
                
    try
                {
                    
    if (method != null)
                        result 
    = (T)method.Invoke(nullnew[] { str });
                }
                
    catch
                {
                    
    return defaultValue;
                }

                
    return result;
            }
  • 相关阅读:
    minio 注意事项
    vim编辑器的快捷命令
    kubernetes Label的增删改查
    JVM java堆内存
    navicat注册机
    hibernate学习笔记_基础配置
    Hibernate学习笔记_helloworld
    junit4初级
    Struts学习笔记_声明式异常处理
    Struts学习笔记_拦截器
  • 原文地址:https://www.cnblogs.com/mad/p/1625342.html
Copyright © 2011-2022 走看看