Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 接收可序列化对象并显示内容_Java_Object_Serialization - Fatal编程技术网

Java 接收可序列化对象并显示内容

Java 接收可序列化对象并显示内容,java,object,serialization,Java,Object,Serialization,我正在用java编写一个应用程序,通过套接字发送一个对象。在连接的另一端,我有另一个应用程序需要接收对象并显示内容 我让我的应用程序通过扫描仪接收文本 in = new Scanner(socket.getInputStream()); while (in.hasNext() { system.out.println(in.next) } 然而,当我尝试使用相同的方法发送对象时,代码是不可编译的。printNumber()是我试图发送的对象中的方法 in = new Scanner(so

我正在用java编写一个应用程序,通过套接字发送一个对象。在连接的另一端,我有另一个应用程序需要接收对象并显示内容

我让我的应用程序通过扫描仪接收文本

in = new Scanner(socket.getInputStream());
while (in.hasNext()
{
   system.out.println(in.next)
}
然而,当我尝试使用相同的方法发送对象时,代码是不可编译的。printNumber()是我试图发送的对象中的方法

in = new Scanner(socket.getInputStream());
while (in.hasNext()
{
   system.out.println(in.printNumber())
}
我试着在互联网上寻找一个教程或什么来解释我应该做什么,但我不知道我到底在寻找什么。谁能给我指出正确的方向吗


干杯

您如何序列化数据

如果您使用的是ObjectOutputStream,则需要ObjectInputStream来读取它

如果您使用的是XMLEncoder,则需要XMLDecoder来读取它


对于每个序列化程序,都有一个合适的反序列化程序,您必须使用匹配的反序列化程序。

首先,您不需要在发送的对象上调用方法,而是在
扫描程序上调用方法。
扫描仪
类中不存在
printNumber()

其次,不要对序列化对象使用扫描仪,
scanner
是为文本输入而设计的。改用
ObjectInputStream

in = new ObjectInputStream(socket.getInputStream()); 
System.out.println(in.readObject());

你能给出你看到的实际错误信息吗?为此干杯,我正在使用ObjectOutputStream!。。。这个调用的Javadoc的第一行表示“可以使用ObjectInputStream读取(重构)对象。”