我的SQL Server 2000中的类型为image的字段中,长度是16,存有数据,形式是“0x47494638376152006400F700000503048C8263404234C4C2AF844544BC8A6D58100E6C623FACA288886441BFA788A9835C664523A471581C221DE4E3D684666C552E1D66542DDCA991DEC5B286734BBCA6ACA693739C937270725C38251A69554C2C0404C09779B0B2A0C3B7A2DFD4C780181B80303067646686838294654B”是256个字节,我select出来之后存在一个String里面就变成了“47494638376152006400F700000503048C8263404234C4C2AF844544BC8A6D58100E6C623FACA288886441BFA788A9835C664523A471581C221DE4E3D684666C552E1D66542DDCA991DEC5B286734BBCA6ACA693739C937270725C38251A69554C2C0404C09779B0B2A0C3B7A2DFD4C780181B80303067646686838294654BA4A3AA77(省略)”是15352字节,通过网络传输太大,请问我这么把它转换成16进制的格式进行网络传输?感激涕零~~~~~~~

解决方案 »

  1.   

    像mysql那样可不可以?以SQL语句的形式保存
      

  2.   

    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery("Select photo from test");
    rs.next();
    String photo = rs.getString("photo");
    System.out.println(photo);
    我打印出来是15352字节的,但是我在管理器中Select photo from test出来的是256字节的
      

  3.   

    rs还有其他get方法,请问用什么办法才能得到0x47494638376152006400F700000503048C8263404234C4C2AF844544BC8A6D58100E6C623FACA288886441BFA788A9835C664523A471581C221DE4E3D684666C552E1D66542DDCA991DEC5B286734BBCA6ACA693739C937270725C38251A69554C2C0404C09779B0B2A0C3B7A2DFD4C780181B80303067646686838294654B”
      

  4.   

    ResultSet有一个方法getBinaryStream()以未解释字节的流的形式获取 返回一个InputStream 然后就可以做二进制流的方式读取出来
      

  5.   

    我知道了使用Blob将存储的二进制代码转换成byte[]