当前位置: 技术问答>java相关
~~~ 变量类型转换问题,送分问题,急用! ~~~
来源: 互联网 发布时间:2015-09-11
本文导语: 如何把ResultSet里的数据,不管是数值型、Datetime型还是Varchar型,都转换成String? 我用 RS.getObject(2).toString() 和 RS.getblod(2).toString() 都报错 另:如何把数值型(如long)的变量转换为String型? | ...
如何把ResultSet里的数据,不管是数值型、Datetime型还是Varchar型,都转换成String? 我用 RS.getObject(2).toString() 和 RS.getblod(2).toString() 都报错
另:如何把数值型(如long)的变量转换为String型?
另:如何把数值型(如long)的变量转换为String型?
|
String str1=""+数值型变量;
|
datetime: RS.getdate(), 然后tostring()
数字:"" + rs.getBigDecimal()
数字:"" + rs.getBigDecimal()
|
1.当从数据库中取出数据Object后,最好不要直接用.toString去转换. 而是通过instaneof去匹配对象属于哪种类型. 然后再进行转换.
2.String.valueof()括号里边可以是:int/Integer,long/Long,double/Double,
char...........
2.String.valueof()括号里边可以是:int/Integer,long/Long,double/Double,
char...........
|
java.lang.UnsupportedOperationException
应该可以看出J2SDK的JDBC ODBC驱动不支持RS.getblod()和RS.getObject()方法,就算是有些大型数据库厂商提供Type4 JDBC驱动也不一定支持这两个,MS SQL SERVER2000的JDBC好象也不支持getblod()方法。
兄弟,好象得另想办法了^_^
应该可以看出J2SDK的JDBC ODBC驱动不支持RS.getblod()和RS.getObject()方法,就算是有些大型数据库厂商提供Type4 JDBC驱动也不一定支持这两个,MS SQL SERVER2000的JDBC好象也不支持getblod()方法。
兄弟,好象得另想办法了^_^
|
如何把数值型(如long)的变量转换为String型?
----------可以使用String 类直接调用valueOf方法将形如123,1232.98等数值转化为字符串,如:String.valueOf(12313.9876);
----------可以使用String 类直接调用valueOf方法将形如123,1232.98等数值转化为字符串,如:String.valueOf(12313.9876);
|
RS.getObject(2).toString()
这样用是不应该错的,可能是其它的原因,
long i = 100;
String str = Long(i).toString();
这样用是不应该错的,可能是其它的原因,
long i = 100;
String str = Long(i).toString();
|
有些类的toString()方法得到的并不是你想要的。
|
RS.getblod(2).toString()
当RS.getblod(2)等于null 时你调用tostring()当然包错了。
如下
String a=(RS.getblod(2)==null ? "":RS.getblod(2).toString());
建议你,对于一些特殊类型的数据,你要查一下api,侃侃具体的转换成string类型的特殊方法,因为有些类型你虽然用tostring能转化,但是转化后得到的不是你想要的。
当RS.getblod(2)等于null 时你调用tostring()当然包错了。
如下
String a=(RS.getblod(2)==null ? "":RS.getblod(2).toString());
建议你,对于一些特殊类型的数据,你要查一下api,侃侃具体的转换成string类型的特殊方法,因为有些类型你虽然用tostring能转化,但是转化后得到的不是你想要的。