Se utiliza StringBufferInputStream para leer datos desde un StringBuffer. Se puede crear un StringBufferInputStream sobre un objeto StringBuffer existente y luego utilizar el método read() para leer desde StringBuffer como si residiera en memoria. Esta canal es similar a ByteArrayInputStream que lee datos de 8 bits desde un array en la memoria, pero StringBufferInputStream lee datos de 16 bits en formato Unicode desde un buffer de string en la memoria. El paquete java.io no tiene ningún canal de salida compañero de StringBufferInputStream -- en su lugar puede utilizar directamente StringBuffer.