刚学C#,请教大家。String s = "王小明   @   3205   ";
怎样获取3205并将之转化成int类型?

解决方案 »

  1.   

    主要是取得3205
    1:用split方法,@分隔
    2:正则表达式取得字符串后,Int32.Prase(string)转型
    TryPrase也行
      

  2.   


    string [] strArr = split(s,"@");
    int iRet = int(strArr[1].trim()) ;
    //iRet : 3205 你要的结果
      

  3.   


                String source = "王小明  @  3205  ";
                string result = source.Split('@')[1].Trim();
                int i = Convert.ToInt32(result);
                Response.Write(i.ToString());
      

  4.   

    只用String.replace()方法能不能实现?
      

  5.   

    弱弱的请教一下 Int32.Prase(string)
    和Convert.ToInt32()
    这两种方法有什么不同?
      

  6.   

    String source = "王小明  @  3205  ";
                string result = source.Split('@')[1].Trim();
                int i = Convert.ToInt32(result);
                Response.Write(i.ToString());
      

  7.   

    string s = "王小明  @  3205  "; 
    string[] arr=s.Split(new char[1]{'@'});
    int i=int.Parse(ar[1].Trim());
    或用正则表达式分割
      

  8.   

    internal static unsafe int ParseInt32(string s, NumberStyles style, NumberFormatInfo info)
    {
        byte* stackBuffer = stackalloc byte[1 * 0x72];
        NumberBuffer number = new NumberBuffer(stackBuffer);
        int num = 0;
        StringToNumber(s, style, ref number, info, false);
        if ((style & NumberStyles.AllowHexSpecifier) != NumberStyles.None)
        {
            if (!HexNumberToInt32(ref number, ref num))
            {
                throw new OverflowException(Environment.GetResourceString("Overflow_Int32"));
            }
            return num;
        }
        if (!NumberToInt32(ref number, ref num))
        {
            throw new OverflowException(Environment.GetResourceString("Overflow_Int32"));
        }
        return num;
    }//Convert
    public static int ToInt32(string value)
    {
        if (value == null)
        {
            return 0;
        }
        return int.Parse(value, CultureInfo.CurrentCulture);
    }
      

  9.   

    try...String s = "王小明  @  3205  "; 
    int i = Convert.ToInt32(System.Text.RegularExpressions.Regex.Match(s, @"\d+").Value);没做范围校验
      

  10.   

     public static void Main()
            {
                String s = "王小明  @  3205";
                int i = Convert.ToInt32(Regex.Match(s, "\\d+").Value);
                Console.WriteLine(i);
            }
      

  11.   

    string [] a=split("@");
    int i=Convert.ToInt32(strArr[1].trim());
      

  12.   

    string [] a=split("@");
    int i=Convert.ToInt32(strArr[1].trim());