while (count > 0)
while (count > 0 || converter.havePendingBytes())
  private void writeChars(char[] buf, int offset, int count)    throws IOException  {    while (count > 0)      {	converter.setOutput(work_bytes, 0);	int converted = converter.write(buf, offset, count);	offset += converted;	count -= converted;	out.write(work_bytes, 0, converter.count);      }  }