This reference is for Processing 2.0+. If you have a previous version, use the reference included with your software. If you see any errors or have suggestions, please let us know. If you prefer a more technical reference, visit the Processing Javadoc.

Class | Client
Name | ### readBytes()
Examples |
    // Example by Tom Igoe

    // Creates a client that listens for input and puts
    // the bytes it gets into a byte[] buffer.

    import processing.net.*;
    Client myClient;
    byte[] byteBuffer = new byte[10];

    void setup() {
      size (300, 100);
      // Connect to the local machine at port 10002.
      // This example will not run if you haven't
      // previously started a server on this port.
      myClient = new Client(this, "127.0.0.1", 10002);
    }

    void draw() {
      if (myClient.available() > 0) {
        background(0);
        // Read in the bytes
        int byteCount = myClient.readBytes(byteBuffer);
        if (byteCount > 0 ) {
          // Convert the byte array to a String
          String myString = new String(byteBuffer);
          // Show it text area
          println(myString);
        }
      }
    }
Description | Reads a group of bytes from the buffer. The version with no parameters returns a byte array of all data in the buffer. This is not efficient, but is easy to use. The version with the byteBuffer parameter is more memory and time efficient. It grabs the data in the buffer and puts it into the byte array passed in and returns an int value for the number of bytes read. If more bytes are available than can fit into the byteBuffer, only those that fit are read.
Syntax |
    client.readBytes()
    client.readBytes(bytebuffer)
Parameters |
client | Client: any variable of type Client
bytebuffer | byte[]: passed in byte array to be altered
Returns | byte[] or int

Updated on October 26, 2013 08:58:28pm PDT