两个关于TEXTBOX问题 第一,现在数据库中的数据为DOUBLE,如果将DOUBLE数据类型读取到TEXTBOX中.第二,在数据库中DOUBLE类型的数据读入到TEXTBOX中后(现有两个TEXTBOX的话),如何对两个TEXTBOX中读入的这个DOUBLE数据进行大小比较.谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 第一,现在数据库中的数据为DOUBLE,如果将DOUBLE数据类型读取到TEXTBOX中.比如:SqlDataReader Line1JHReadThan = line1JHselectFloat.ExecuteReader(); 出现一个错误,说不能将STRING隐式转换为DOUBLE,如何写?第二,在数据库中DOUBLE类型的数据读入到TEXTBOX中后(现有两个TEXTBOX的话),如何对两个TEXTBOX中读入的这个DOUBLE数据进行大小比较. 谢谢! Double db = 12.34; Double db2 = 0.0; this.textBox2.Text = db.ToString(); db2 = Convert.ToDouble(this.textBox2.Text); Console.WriteLine(db2); 你没明白我的意思,我的数据是从数据库中取出来的,数据库中的数据为DOUBLE,我要取到TEXTBOX中,但不能取出,提示不能隐式转换,这是第一个问题第二个是接着第一个的,当第一个问题解决后,也就是数据库中DOUBLE数据成功放到TEXTBOX中后,那么现在我要对两个TEXTBOX中刚取出来的数据进行大小比较.并能在IF块中进判断. 用SqlDataReader的GetFloat方法不能取吗? 第一个问题,你取到的值加.ToString()应该可以做为TextBox的Text属性值第2个问题try{if(double.Parse(TextBox1.Text.Trim())>double.Parse(TextBox1.Text.Trim())){}}catch{}如果你的程序比较复杂,要求性能的话就不要用try-catch先判断两个值是否能转化为double if(double.Parse(TextBox1.Text.Trim())>double.Parse(TextBox1.Text.Trim()))提示不正确,不能转换.明天后天休息,再后天来看. Convert.ToDoubleConvert.ToString 嘿嘿,不就是double和string之间的相互转换吗?如下://1.rd表示你的SqlDataReader类的对象,double到string 不能隐势转换,要强制转换。 TextBox1.Text=rd.GetValue(0).ToString(); //or TextBox1.Text=Convert.ToString(rd.GetValue(0)).Trim()//强制转换//2.用Convert.ToDouble 比 double.Parse 好些//double.Parse参数只接受数字字符,不接受数值和带小数点的数值字符//而Convert.ToDouble参数接受数字字符,数值和数值字符if(Convert.ToDouble(TextBox1.Text.Trim())>Convert.ToDouble(TextBox2.Text.Trim())){//这里用double.Parse出错应该就是TextBox1.Text里面的字符包含小数点} aaa.ToString();bbb = Convert.ToDouble(this.textBox2.Text); Double db=Convert.ToDouble(sdr["字段名"]);this.TextBox1.Text=db.ToString();//比较if (Convert.ToDouble(this.TextBox1.Trim())>Convert.ToDouble(this.TextBox2.Trim()){ //操作..} DataSet ds = new DataSet();this.TextBox1.Text = ds.Tables["表名"].Rows["行号"]["字段名"].ToString(); 还有一个问题,if (Convert.ToDouble(this.TextBox1.Trim())>Convert.ToDouble(this.TextBox2.Trim())这个是没有问题了,当如果有一个BOX为空的话,就不能运行,提示说日期什么不能转换,可这里根本就没有什么日期.为什么? ^-^,Convert.ToDouble(参数)不接受空字符,只接受数字字符,数值和数值字符如:Convert.ToDouble("6")Convert.ToDouble(6)Convert.ToDouble("6.0")都可以,但是Convert.ToDouble("")Convert.ToDouble("a")Convert.ToDouble("1a")就会出错。所以转换前最好判断参数是否正确,或者使用try{}catch(Exception ex){MessageBox.Show(ex + "——转换失败!");}进行错误处理 求助一个关于string[]的问题 老程序员问个弱智问题,来者有分! ==反射== 有谁能给个"实用简单"的例子? 关于滚动条的问题 关于开发一个windows应用程序的问题 向大家请教问题,关于反射,委托,事件挂钩的 在SQL2000中怎么样删除三个表里相关联的数据? 设置断点 提示标识符超出范围 怎么会 请问如何在.net中动态使用web服务 因为在TextBox中输入的都是字符串,怎么转换成所需要的类型? C#的相似查询 我想以一个矩形笔头走一条直线,该怎么实现,注意,以不同方向走线,线宽是不一样的
第二,在数据库中DOUBLE类型的数据读入到TEXTBOX中后(现有两个TEXTBOX的话),如何对两个TEXTBOX中读入的这个DOUBLE数据进行大小比较.
谢谢!
Double db2 = 0.0; this.textBox2.Text = db.ToString();
db2 = Convert.ToDouble(this.textBox2.Text);
Console.WriteLine(db2);
第二个是接着第一个的,当第一个问题解决后,也就是数据库中DOUBLE数据成功放到TEXTBOX中后,那么现在我要对两个TEXTBOX中刚取出来的数据进行大小比较.并能在IF块中进判断.
第2个问题
try{
if(double.Parse(TextBox1.Text.Trim())>double.Parse(TextBox1.Text.Trim()))
{
}
}
catch
{
}
如果你的程序比较复杂,要求性能的话就不要用try-catch
先判断两个值是否能转化为double
提示不正确,不能转换.
明天后天休息,再后天来看.
Convert.ToString
如下:
//1.rd表示你的SqlDataReader类的对象,double到string 不能隐势转换,要强制转换。
TextBox1.Text=rd.GetValue(0).ToString();
//or TextBox1.Text=Convert.ToString(rd.GetValue(0)).Trim()//强制转换//2.用Convert.ToDouble 比 double.Parse 好些
//double.Parse参数只接受数字字符,不接受数值和带小数点的数值字符
//而Convert.ToDouble参数接受数字字符,数值和数值字符
if(Convert.ToDouble(TextBox1.Text.Trim())>Convert.ToDouble(TextBox2.Text.Trim()))
{//这里用double.Parse出错应该就是TextBox1.Text里面的字符包含小数点
}
bbb = Convert.ToDouble(this.textBox2.Text);
if (Convert.ToDouble(this.TextBox1.Trim())>Convert.ToDouble(this.TextBox2.Trim())
{
//操作..
}
this.TextBox1.Text = ds.Tables["表名"].Rows["行号"]["字段名"].ToString();
如:
Convert.ToDouble("6")
Convert.ToDouble(6)
Convert.ToDouble("6.0")
都可以,但是
Convert.ToDouble("")
Convert.ToDouble("a")
Convert.ToDouble("1a")
就会出错。
所以转换前最好判断参数是否正确,或者使用
try
{}
catch(Exception ex)
{MessageBox.Show(ex + "——转换失败!");
}
进行错误处理