always close the inReader stream
don't use string concatation in loop
more null checks