1

Java StringBuffer シリアル化の結果のように見える db varchar フィールドがあります。

íjava.lang.StringBuffer [この質問のために削除された多くのランダムな文字]

文字列に逆シリアル化するにはどうすればよいですか?

4

1 に答える 1

2

基本的に、これを行う必要があります:

byte[] varcharContents = ... // get the bytes of the field, not via a String
ObjectInputStream ois = 
    new ObjectInputStream(new ByteArrayInputStream(varcharContents));
StringBuffer sb = (StringBuffer)ois.readObject();
String s = sb.toString();

シリアライゼーションによって生成された元のバイトを実際に取得できること、および DB との間で変換されていないことを期待する必要があります。

于 2011-03-07T03:37:44.167 に答える