-package javajs.util;\r
-\r
-import java.io.BufferedReader;\r
-import java.io.IOException;\r
-import java.io.Reader;\r
-import java.io.StringReader;\r
-\r
-/**\r
- * Just a simple abstract class to join a String reader and a String[]\r
- * reader under the same BufferedReader umbrella.\r
- * \r
- * Subclassed as StringDataReader, ArrayDataReader, and ListDataReader\r
- * \r
- */\r
-\r
-public abstract class DataReader extends BufferedReader {\r
-\r
- public abstract DataReader setData(Object data);\r
- \r
- protected int ptMark;\r
-\r
- public DataReader() {\r
- super(new StringReader(""));\r
- }\r
-\r
- protected DataReader(Reader in) {\r
- super(in);\r
- }\r
-\r
- public BufferedReader getBufferedReader() {\r
- return this;\r
- }\r
-\r
- protected int readBuf(char[] buf, int off, int len) throws IOException {\r
- // not used by StringDataReader\r
- int nRead = 0;\r
- String line = readLine();\r
- if (line == null)\r
- return 0;\r
- int linept = 0;\r
- int linelen = line.length();\r
- for (int i = off; i < len && linelen >= 0; i++) {\r
- if (linept >= linelen) {\r
- linept = 0;\r
- buf[i] = '\n';\r
- line = readLine();\r
- linelen = (line == null ? -1 : line.length());\r
- } else {\r
- buf[i] = line.charAt(linept++);\r
- }\r
- nRead++;\r
- }\r
- return nRead;\r
- }\r
-\r
+package javajs.util;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringReader;
+
+/**
+ * Just a simple abstract class to join a String reader and a String[]
+ * reader under the same BufferedReader umbrella.
+ *
+ * Subclassed as StringDataReader, ArrayDataReader, and ListDataReader
+ *
+ */
+
+public abstract class DataReader extends BufferedReader {
+
+ public abstract DataReader setData(Object data);
+
+ protected int ptMark;
+
+ public DataReader() {
+ super(new StringReader(""));
+ }
+
+ protected DataReader(Reader in) {
+ super(in);
+ }
+
+ public BufferedReader getBufferedReader() {
+ return this;
+ }
+
+ protected int readBuf(char[] buf, int off, int len) throws IOException {
+ // not used by StringDataReader
+ int nRead = 0;
+ String line = readLine();
+ if (line == null)
+ return 0;
+ int linept = 0;
+ int linelen = line.length();
+ for (int i = off; i < len && linelen >= 0; i++) {
+ if (linept >= linelen) {
+ linept = 0;
+ buf[i] = '\n';
+ line = readLine();
+ linelen = (line == null ? -1 : line.length());
+ } else {
+ buf[i] = line.charAt(linept++);
+ }
+ nRead++;
+ }
+ return nRead;
+ }
+
}
\ No newline at end of file