你怎么用BLOB保存呢?这个是2进制文件,xml是文本内容的,应该使用COLB啊。不过你用BinaryStream读出来应该也是可以的

解决方案 »

  1.   

    请指教啊,我也这么想的啊,他们应该用CLOB类型去保存Character类型的XML文件,
    但定义类型的时候不是我定义的啊,是美国那边的一家公司,我只是去远程访问,
    把数据取出来保存到文本中而已。
     下面是我写的提取数据的代码啊,保存到文件中是二进制乱码。
    while (rs.next()) { /* 取出此BLOB对象 */ oracle.sql.BLOB blob = (oracle.sql.BLOB) rs
    .getBlob("TRANSACTIONXML");
    // String
    // transactiontypename=(String)rs.getString("transactiontypename"); /* 以二进制形式输出 */
    BufferedOutputStream out = new BufferedOutputStream(
    new FileOutputStream("1.txt")); BufferedInputStream in = new BufferedInputStream(blob
    .getBinaryStream()); int c; while ((c = in.read()) != -1) { out.write(c); } in.close(); out.close();
    System.out
    .println("success to get the transaction XML file,congradurations");
    }