JSONが優れているか、Jythonを使用してJavaのシリアライゼーションライブラリを利用できます。その利点は、クラスをシリアル化可能な形式に変換する作業を必要としないことです。文字通りシリアル化を実装し、serialVersionUIDを追加するだけです。 Jython tipsからコピー
:
9シリアライズ
Javaオブジェクトは、標準のPythonピックルとはcPickleモジュールを使用して直列化することはできません。 JavaとJythonの両方のオブジェクトは、通常のJavaシリアル化を使用してシリアル化できます。あなたは、通常のjava.io.ObjectInputStreamクラスを使用することはできませんJythonのオブジェクトをデシリアライズするとき、ここで示したようにしかし、あなたは、Jythonの固有org.python.util.PythonObjectInputStreamを使用する必要があります。
import java.io as io
import org.python.util as util
class TestClass(io.Serializable):
def __init_ _(self, value=0):
self.value = value
self.message = "Serialized"
def toString(self):
return "Message: %(message)s value:
is %(value)s" % self.__dict_ _
instance = TestClass(3)
outFile = io.FileOutputStream("test.ser")
outStream = io.ObjectOutputStream(outFile)
outStream.writeObject(instance)
outFile.close()
inFile = io.FileInputStream("test.ser")
inStream = util.PythonObjectInputStream(inFile)
readInstance = inStream.readObject()
print readInstance.toString()
Message: Serialized value: is 3
あなたが使用していない場合通常のJava ObjectInputStreamでは、JythonのJava継承に使用される動的にロードされたプロキシクラスを見つけて再作成することが難しいため、PythonObjectInputStreamではランタイムエラーが発生します。
こんにちは、ありがとう!良いAndroid JSONチュートリアルを教えてください。私はそれを自分で見つけたが、初心者のための素敵なステップバイステップガイドを見つけることができないようだ。再度、感謝します! – herrfz
それはかなり簡単です、例えばhttp://www.vogella.com/articles/AndroidJSON/article.html#write – marwinXXII
クール、ありがとう! – herrfz