--- /dev/null
+package mir.misc;
+import java.io.*;
+
+/**
+ * LineFilterWriter schneidet unsinnige \t \r \n ` ` raus
+ *
+ **/
+public final class LineFilterWriter extends PrintWriter{//extends java.io.FilterWriter{
+
+
+ public LineFilterWriter(Writer out) {
+ super(out);
+ }
+
+ public final void write(String str){
+ int i,j,len;
+ boolean state=true;
+ char c;
+ len=str.length();
+ if (len==1) {try{out.write(str);}catch(IOException e){}return;}
+ StringBuffer sbuf = new StringBuffer();
+
+ for(i=0;i<len;i++) {
+ c=str.charAt(i);
+ if(state) {
+ j = str.indexOf('\n',i);
+ if (j==-1) j=len-1;
+ sbuf.append(str.substring(i,j+1));
+ i=j;
+ state=false;
+ }
+ else
+ if (!Character.isWhitespace(c)) {
+ sbuf.append(c);
+ state=true;
+ }
+ }
+ try{out.write(sbuf.toString());}catch(IOException e){;}
+ }
+
+ public final void write(char[] cbuf, int off,int len){
+ int i,j=off;
+ boolean state=true;
+ char c;
+
+ for(i=off;i<len;i++) {
+ c=cbuf[i];
+ if(state) {
+ if (c=='\n') state=false;
+ cbuf[j++]=c;
+ }
+ else
+ if (!Character.isWhitespace(c)) {
+ cbuf[j++]=c;
+ state=true;
+ }
+ }
+ try{out.write(cbuf,off,j);}catch(IOException e){;}
+ }
+
+
+}