src/main/java/org/wymiwyg/commons/util/io/IndentWriter.java
public void write(char[] cbuf, int off, int len) throws IOException {
		int posInSeparatorChars = 0;
		for (int i = 0; i < len; i++) {
			if (identBeforeNextChar) {
				base.write('\t');
				identBeforeNextChar = false;
			}
			base.write(cbuf[i]);
			if (cbuf[i] == separatorChars[posInSeparatorChars]) {
				posInSeparatorChars++;
				if (posInSeparatorChars == separatorChars.length) {
					identBeforeNextChar = true;
					posInSeparatorChars = 0;
				}
			} else {
				posInSeparatorChars = 0;
			}
		}
		
	}
public void write(char[] cbuf, int off, int len) throws IOException {
		int posInSeparatorChars = 0;
		for (int i = 0; i < len; i++) {
			if (identBeforeNextChar) {
				base.write('\t');
				identBeforeNextChar = false;
			}
			base.write(cbuf[i]);
			if (cbuf[i] == separatorChars[posInSeparatorChars]) {
				posInSeparatorChars++;
				if (posInSeparatorChars == separatorChars.length) {
					identBeforeNextChar = true;
					posInSeparatorChars = 0;
				}
			} else {
				posInSeparatorChars = 0;
			}
		}
		
	}
public void write ( char [ ] cbuf , int off , int len ) throws IOException { int posInSeparatorChars = 0 ; for ( int i = 0 ; i < len ; i ++ ) { if ( identBeforeNextChar ) { base . write ( ' ' ) ; identBeforeNextChar = false ; } base . write ( cbuf [ i ] ) ; if ( cbuf [ i ] == separatorChars [ posInSeparatorChars ] ) { posInSeparatorChars ++ ; if ( posInSeparatorChars == separatorChars . length ) { identBeforeNextChar = true ; posInSeparatorChars = 0 ; } } else { posInSeparatorChars = 0 ; } } }
/* (non-Javadoc)
@see java.io.Writer#write(char[], int, int)
/ * ( non - Javadoc )