1

所以我正在使用套接字创建一个应用程序。我有发送消息的客户端,它使用writeObject(new String("Name|Message"));.

我阅读了服务器中的消息,使用readObject();

我正在尝试将此字符串对象传递给数组。但我明白了[Ljava.lang.String;@6bb9ae1a

这是我正在尝试的:

ObjectInputStream saida = new ObjectInputStream(client.getInputStream());
String[] read = saida.readObject().toString().split("|");
System.out.println(read);

我还尝试为每个拆分创建变量:

   String readm = read[1];
   String readn = read[0];

但它返回我“”作为名称和“A”作为消息(?)

哦,套接字正在工作,因为如果我这样做(String) saida.readObject();,它会返回正常的字符串。

4

1 回答 1

0

像这样使用:

saida.readObject().toString().split("\\|"); 

进而

String readm = read[1];
String readn = read[0];

因为管道符号是特殊字符,拆分特殊字符是不同的。而且您不能使用 systemoutprintln 来打印字符串数组。

于 2013-09-02T11:30:38.997 回答