Java 输入流的对象数组

Java 输入流的对象数组,java,inputstream,Java,Inputstream,我有一个person类数组 Class Person {} 有人能帮我把Person[]数组转换成inputstream或ByTestStream吗 提前感谢。为了能够将对象写入(序列化)流,您的类应该实现接口。在大多数情况下,除了在类定义中添加“implements Serializable”子句外,无需执行任何操作: class Person implements Serializable { // your class's fields and methods } 然后,当然,您不是在

我有一个person类数组

Class Person
{}
有人能帮我把
Person[]
数组转换成inputstream或ByTestStream吗

提前感谢。

为了能够将对象写入(序列化)流,您的类应该实现接口。在大多数情况下,除了在类定义中添加“implements Serializable”子句外,无需执行任何操作:

class Person implements Serializable {
// your class's fields and methods
}
然后,当然,您不是在写入输入流,而是在写入输出流:

要转换为字节数组,仍需使用序列化:

ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.write(person);
byte[] bytes = baos.toByteArray();

感谢您的回复…基本上我使用了Person类作为示例,但我有一个jar附带的类,它是不可序列化的。在这种情况下,我不能继续进行序列化。若不能使用序列化,那个么这个问题应该重新表述。是的,以前有人问过:你的问题毫无意义。如果您的类不可序列化,则无法对其进行序列化,因此无法对其进行任何转换。。。输入流或字节流。谢谢Maksimov,但我不想将我的对象写入文件,而是想要一个字节数组,因为它打包在jar文件中,所以我无法向其中添加可序列化的内容。@Ritesh我已经更新了答案,以涵盖字节数组的情况,但是对于对象不可序列化的情况,您必须解决这个问题。请参见以下示例:
ByteArrayOutputStream baos = new ByteArrayOutputStream();
baos.write(person);
byte[] bytes = baos.toByteArray();