我有一个Java模拟器序列化自定义结果对象。我想在Matlab中反序列化这些对象以进行进一步的统计分析。如何在Java中序列化在Java中反序列化用户定义的Java对象?
这可能吗?
Result对象中的数据是异构的。它包含另一个用户定义的类参数,整数和双精度链表。
我编辑了classpath.txt文件到我的java包的根目录并导入了Result和Parameters两个成功。但是,如果我尝试用负载('文件名')反序列化一个对象,我收到以下错误
>> load('Type3aa_simpleToCreate_no_com.2011-04-28
00.05.29.experiment.data') ??? Error using ==> load Number of columns on
line 1 of ASCII file
C:\Thesis\code\Thesis
v0.7\Results\Type3aa_simpleToCreate_no_com.2011-04-28
00.05.29.experiment.data must be the same as previous lines.
你对序列化的评论是可疑的。它可能在1997年和其他所有事情一样缓慢:当然不是现在,从来没有“臭名昭着”如此。序列化被广泛使用,例如在RMI中,因此JMX; Web服务器会话和托管的bean; ... – EJP 2011-04-29 00:17:55
感谢您的意见。我决定让java将变量写到一个文件中,从中我创建一个Matlab结构。 – Ruben 2011-04-29 16:26:37
我对序列化的评论基于个人经验。我放弃了它,因此RMI也在2003年左右放慢了速度,我的印象是它已经在很大程度上被HTTP取代,成为通过网络交换消息的首选协议。但当然不是每个人都有相同的标准。 – njlarsson 2011-04-29 22:05:56