public void append(char c[]){
  int maxlength=buffer.length - pos;
  if (c.length < maxlength) {
    System.arraycopy(c,0,buffer,pos,c.length);
    pos+=c.length;
  }
 else {
    System.arraycopy(c,0,buffer,pos,maxlength);
    curr.next=new Entity(buffer);
    curr=curr.next;
    length+=buffer.length;
    buffer=new char[(buffer.length > c.length - maxlength) ? buffer.length : c.length - maxlength];
    if (c.length > maxlength) {
      System.arraycopy(c,maxlength,buffer,0,c.length - maxlength);
      pos=c.length - maxlength;
    }
 else {
      pos=0;
    }
  }
}

public void append ( char c [ ] ) { int maxlength = buffer . length - pos ; if ( c . length < maxlength ) { System . arraycopy ( c , 0 , buffer , pos , c . length ) ; pos += c . length ; } else { System . arraycopy ( c , 0 , buffer , pos , maxlength ) ; curr . next = new Entity ( buffer ) ; curr = curr . next ; length += buffer . length ; buffer = new char [ ( buffer . length > c . length - maxlength ) ? buffer . length : c . length - maxlength ] ; if ( c . length > maxlength ) { System . arraycopy ( c , maxlength , buffer , 0 , c . length - maxlength ) ; pos = c . length - maxlength ; } else { pos = 0 ; } } }
method to appennd a charr array to the buffer
