由於你有數據,則可以簡單地看一下八個八位字節以下的流中的類名由類的grammar for Java Serialization
00000000: aced 0005 7372 0003 466f 6f00 0000 0000 ....sr..Foo.....
00000010: 0000 0102 0001 4c00 066d 794e 616d 6574 ......L..myNamet
00000020: 0012 4c6a 6176 612f 6c61 6e67 2f53 7472 ..Ljava/lang/Str
00000030: 696e 673b 7870 7400 044a 6f68 6e ing;xpt..John
名稱所指示的上面是「富」(沒有包),並且serialVersionUID是1L。這裏有另外一個例子:
00000000: aced 0005 7372 0011 7374 6163 6b6f 7665 ....sr..stackove
00000010: 7266 6c6f 772e 466f 6fff ffff ffff 7e3c rflow.Foo.....~<
00000020: 1802 0001 4c00 066d 794e 616d 6574 0012 ....L..myNamet..
00000030: 4c6a 6176 612f 6c61 6e67 2f53 7472 696e Ljava/lang/Strin
00000040: 673b 7870 7400 044a 6f68 6e g;xpt..John
classname是stackoverflow.Foo。該serialVersionUID的是0xff7e3c18由該序列的八位位組指出:
ff ffff fffff 7e3c 18
現在你要做的就是看看文件格式,找出你的目標是在每一種情況下,讀取的serialVersionUID緊隨所述的className在語法上面鏈接。
可能的重複[如何找出序列化Java對象的serialVersionUID?](http://stackoverflow.com/questions/703591/how-can-i-find-out-the-serialversionuid-of-一個序列化的Java對象) – 2012-01-12 18:39:37
答案那裏與從源極/類文件生成的serialVersionUID處理更多。我想在現有的序列化對象中發現serialVersionUID。 – Mitch 2012-01-12 18:56:26