现在我有一个object类型的值,我想将它转为int格式,除了一下这样的方法之外还有没有别的方法            int m;
            object str = "r";
            int.TryParse(str.ToString(), out m);
            Console.WriteLine(m.ToString());
因为觉得里面还要将它转为string太麻烦了
但是用Convert之外的方法,假如object是等于英文字母的话就会报错
请指教~~!

解决方案 »

  1.   

    自己捕获异常不就行了还是用TryParse吧
      

  2.   

    try
    {
       Console.WriteLine( ((int)obj).ToString() );
    }
    catch 
    {
       //??
    }
      

  3.   

    object str = "r";
    Console.WriteLine(str);就可以了
     object str = "r";
    int a=(int)str;//会报错,所以还是
    你那个保险点
      

  4.   

    int i = 7;
    string s = "r";
    object o1 = (object)i;
    object o2 = (object)s;
    Console.WriteLine(o1 is int ? ((int)o1).ToString() : "非兼容int类型");
    Console.WriteLine(o2 is int ? ((int)o2).ToString() : "非兼容int类型");
      

  5.   

    int.parse(string数字有效表达式);Convert.ToInt32(任意类型),因为存在转换无意义,所以还是得做个异常处理呀;等待更高的做法...