请问如何把字符串转换为实型 C#真是太麻烦了,每个类型转换都要花几个小时去研究,又碰到了同样的问题double d1=double.Parse(,dr.GetValue(0).ToString());上面出错 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 详细错误输入字符串的格式不正确。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 输入字符串的格式不正确。源错误: 行 51: while(dr.Read())行 52: { double d1,d2;行 53: d1=double.Parse(dr.GetValue(0).ToString());行 54: d2=double.Parse(dr.GetValue(1).ToString());行 55: d1=Math.Round(d1,2); ?楼主用的是System.Data.SqlClient.SqlDataReader么?如果是,这个DataReader有很多Get方法可以使用的如果要获得Double类型,只要DataReader.GetDouble(0)就行了啊==============================以下摘自MSDN============================== GetBoolean 已重写。 获取指定列的布尔值形式的值。 GetByte 已重写。 获取指定列的字节形式的值。 GetBytes 已重写。 从指定的列偏移量将字节流读入缓冲区,并将其作为从给定的缓冲区偏移量开始的数组。 GetChar 已重写。 获取指定列的单个字符串形式的值。 GetChars 已重写。 从指定的列偏移量将字符流作为数组从给定的缓冲区偏移量开始读入缓冲区。 GetData 返回被请求的列序号的 DbDataReader 对象。 (从 DbDataReader 继承。) GetDataTypeName 已重写。 获取源数据类型的名称。 GetDateTime 已重写。 获取指定列的 DateTime 对象形式的值。 GetDecimal 已重写。 获取指定列的 Decimal 对象形式的值。 GetDouble 已重写。 获取指定列的双精度浮点数形式的值。 GetEnumerator 已重写。 返回循环访问 SqlDataReader 的 IEnumerator。 GetFieldType 已重写。 获取是对象的数据类型的 Type。 GetFloat 已重写。 获取指定列的单精度浮点数形式的值。 GetGuid 已重写。 获取指定列的值作为全局唯一标识符 (GUID)。 GetHashCode 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。) GetInt16 已重写。 获取指定列的 16 位有符号整数形式的值。 GetInt32 已重写。 获取指定列的 32 位有符号整数形式的值。 GetInt64 已重写。 获取指定列的 64 位有符号整数形式的值。 GetLifetimeService 检索控制此实例的生存期策略的当前生存期服务对象。 (从 MarshalByRefObject 继承。) GetName 已重写。 获取指定列的名称。 GetOrdinal 已重写。 在给定列名称的情况下获取列序号。 GetProviderSpecificFieldType 已重写。 获取一个 Object,它表示基础提供程序特定的字段类型。 GetProviderSpecificValue 已重写。 获取一个表示基础提供程序特定值的 Object。 GetProviderSpecificValues 已重写。 获取一个对象数组,这些对象表示特定于基础提供程序的值。 GetSchemaTable 已重写。 返回一个 DataTable,它描述 SqlDataReader 的列元数据。 GetSqlBinary 获取指定列的 SqlBinary 形式的值。 GetSqlBoolean 获取指定列的 SqlBoolean 形式的值。 GetSqlByte 获取指定列的 SqlByte 形式的值。 GetSqlBytes 获取指定列的 SqlBytes 形式的值。 GetSqlChars 获取指定列的 SqlChars 形式的值。 GetSqlDateTime 获取指定列的 SqlDateTime 形式的值。 GetSqlDecimal 获取指定列的 SqlDecimal 形式的值。 GetSqlDouble 获取指定列的 SqlDouble 形式的值。 GetSqlGuid 获取指定列的 SqlGuid 形式的值。 GetSqlInt16 获取指定列的 SqlInt16 形式的值。 GetSqlInt32 获取指定列的 SqlInt32 形式的值。 GetSqlInt64 获取指定列的 SqlInt64 形式的值。 GetSqlMoney 获取指定列的 SqlMoney 形式的值。 GetSqlSingle 获取指定列的 SqlSingle 形式的值。 GetSqlString 获取指定列的 SqlString 形式的值。 GetSqlValue 获取一个表示基础 SqlDbType 变量的 Object。 GetSqlValues 获取当前行中的所有属性列。 GetSqlXml 获取指定列的 XML 值形式的值。 GetString 已重写。 获取指定列的字符串形式的值。 GetType 获取当前实例的 Type。 (从 Object 继承。) GetValue 已重写。 获取以本机格式表示的指定列的值。 GetValues 已重写。 获取当前行的集合中的所有属性列。 我就是用的 SqlDataReader请问,如何让金额从4位小数变为两位小数,我伤透了心 <%# DataBinder.Eval(Container.DataItem, "Price", "{0:c}") %>在第三个参数里面,可以控制各种格式。 压缩文件时能先弹出提示框吗?然后在压缩。求高手。等答案。 二进制流存入sql数据的问题 Winform 有没有类似于petshop那样的源码 关于插入数据到数据库的问题! c#的计算器的一点小问题,忘高手解答 .net的程序集到底怎么用?这个共享程序集到底是怎么一回事? 求算法 ToolBar 和 MdiForm 问题 (高手进) 建立了一个QQ群:只讨论VS2005中C#设计Win App时遇到的问题 做个作品去应聘,一定要面向对象思想的吗?我做了一个直接操作数据库的不知道可不可以? FtpFindFirstFile获取文件名不对 在线等 VS2005最初级问题
输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 输入字符串的格式不正确。源错误:
行 51: while(dr.Read())
行 52: { double d1,d2;
行 53: d1=double.Parse(dr.GetValue(0).ToString());
行 54: d2=double.Parse(dr.GetValue(1).ToString());
行 55: d1=Math.Round(d1,2);
楼主用的是System.Data.SqlClient.SqlDataReader么?
如果是,这个DataReader有很多Get方法可以使用的如果要获得Double类型,只要DataReader.GetDouble(0)就行了啊
==============================
以下摘自MSDN
==============================
GetBoolean 已重写。 获取指定列的布尔值形式的值。
GetByte 已重写。 获取指定列的字节形式的值。
GetBytes 已重写。 从指定的列偏移量将字节流读入缓冲区,并将其作为从给定的缓冲区偏移量开始的数组。
GetChar 已重写。 获取指定列的单个字符串形式的值。
GetChars 已重写。 从指定的列偏移量将字符流作为数组从给定的缓冲区偏移量开始读入缓冲区。
GetData 返回被请求的列序号的 DbDataReader 对象。 (从 DbDataReader 继承。)
GetDataTypeName 已重写。 获取源数据类型的名称。
GetDateTime 已重写。 获取指定列的 DateTime 对象形式的值。
GetDecimal 已重写。 获取指定列的 Decimal 对象形式的值。
GetDouble 已重写。 获取指定列的双精度浮点数形式的值。
GetEnumerator 已重写。 返回循环访问 SqlDataReader 的 IEnumerator。
GetFieldType 已重写。 获取是对象的数据类型的 Type。
GetFloat 已重写。 获取指定列的单精度浮点数形式的值。
GetGuid 已重写。 获取指定列的值作为全局唯一标识符 (GUID)。
GetHashCode 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。)
GetInt16 已重写。 获取指定列的 16 位有符号整数形式的值。
GetInt32 已重写。 获取指定列的 32 位有符号整数形式的值。
GetInt64 已重写。 获取指定列的 64 位有符号整数形式的值。
GetLifetimeService 检索控制此实例的生存期策略的当前生存期服务对象。 (从 MarshalByRefObject 继承。)
GetName 已重写。 获取指定列的名称。
GetOrdinal 已重写。 在给定列名称的情况下获取列序号。
GetProviderSpecificFieldType 已重写。 获取一个 Object,它表示基础提供程序特定的字段类型。
GetProviderSpecificValue 已重写。 获取一个表示基础提供程序特定值的 Object。
GetProviderSpecificValues 已重写。 获取一个对象数组,这些对象表示特定于基础提供程序的值。
GetSchemaTable 已重写。 返回一个 DataTable,它描述 SqlDataReader 的列元数据。
GetSqlBinary 获取指定列的 SqlBinary 形式的值。
GetSqlBoolean 获取指定列的 SqlBoolean 形式的值。
GetSqlByte 获取指定列的 SqlByte 形式的值。
GetSqlBytes 获取指定列的 SqlBytes 形式的值。
GetSqlChars 获取指定列的 SqlChars 形式的值。
GetSqlDateTime 获取指定列的 SqlDateTime 形式的值。
GetSqlDecimal 获取指定列的 SqlDecimal 形式的值。
GetSqlDouble 获取指定列的 SqlDouble 形式的值。
GetSqlGuid 获取指定列的 SqlGuid 形式的值。
GetSqlInt16 获取指定列的 SqlInt16 形式的值。
GetSqlInt32 获取指定列的 SqlInt32 形式的值。
GetSqlInt64 获取指定列的 SqlInt64 形式的值。
GetSqlMoney 获取指定列的 SqlMoney 形式的值。
GetSqlSingle 获取指定列的 SqlSingle 形式的值。
GetSqlString 获取指定列的 SqlString 形式的值。
GetSqlValue 获取一个表示基础 SqlDbType 变量的 Object。
GetSqlValues 获取当前行中的所有属性列。
GetSqlXml 获取指定列的 XML 值形式的值。
GetString 已重写。 获取指定列的字符串形式的值。
GetType 获取当前实例的 Type。 (从 Object 继承。)
GetValue 已重写。 获取以本机格式表示的指定列的值。
GetValues 已重写。 获取当前行的集合中的所有属性列。
请问,如何让金额从4位小数变为两位小数,我伤透了心
在第三个参数里面,可以控制各种格式。