2

I have this to send string or integer but if i want to send a string array what should i use?

  // A string ("Hello, World").
    out.write("Hello, World".getBytes());

    // An integer (123).
    out.write(ByteBuffer.allocate(4).putInt(123).array());

Thanks in advance

drizzom
  • 37
  • 1
  • 7

1 Answers1

6

Just write the array

ObjectOutputStream out = ...
String[] array = ...     
out.writeObject(array);

If you're using ObjectOutputStream, there's no need to muck about with byte arrays - the class provides high-level methods to read and write entire objects.

Similarly:

out.writeInt(123);
out.writeObject("Hello, World");

You only need to use the write(byte[]) methods if you're using the raw, low-level OutputStream class.

skaffman
  • 398,947
  • 96
  • 818
  • 769