用int就可以了!
int i=(int)111.11;

解决方案 »

  1.   

    int i=Int16.Parse()
    int i=Convert.ToInt16()
    试一下吧
      

  2.   

    这样还是不行,那我列列我写的东西,请指点一下int a,b,c;
    a = int.Parse(dr["aaa"].ToString());//数据库中读出字段值
    b = a + 1 ;如果数据库中读出字段值是整数一切正常,如果是浮点数, 
    对 a 赋值那一行就报错,请教这里该怎么写?
      

  3.   

    int i=Int16.Parse()
    int i=Convert.ToInt16()
    这种常用转化方法都试过,
    Int16.Parse()甚至直接报错。
      

  4.   

    如果dr["aaa"]的数值不大的话上面的转化应该成功,不成功可能是你的数值超出范围。你可以换long之类的试试,方法同你的。。
      

  5.   

    可以不用 Parse 吗?
    a = Convert.ToInt32(dr["aaa"])
    也不要 .ToString 了。
      

  6.   

    string s = "12.345";
    float f = float.Parse(s);
    System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
    nfi.NumberDecimalDigits = 0;   //小数位数为0
    int i = int.Parse(f.ToString("N", nfi));