www.pudn.com > JAVIS-0.3.zip > Input.java
package util;
import java.io.Reader;
import java.io.BufferedReader;
import java.io.IOException;
import util.Debug;
public class Input{
public static StringBuffer getLine(BufferedReader reader)
throws IOException {
String s=reader.readLine();
if (s==null)
return new StringBuffer();
StringBuffer sb=new StringBuffer(s);
sb.append('\n');
return sb;
}
/* public static StringBuffer getLine (BufferedReader reader)
throws IOException {
StringBuffer s=new StringBuffer();
int ch=' ';
boolean first=true;
while (true) {
ch=reader.read();
if ((char)ch=='\n' || ch==-1)
break;
first=false;
s.append((char)ch);
}
if (!first || ch!=-1)
s.append('\n');
return s;
}
*/
static public int skipSpaces (Reader reader) {
int ch=' ';
try {
ch=reader.read();
while ((char) ch == ' ') ch=reader.read();
}
catch(IOException e) {
Debug.out.println("Failure");
}
return ch;
}
static public int getInteger(Reader reader) {
int ch=' ';
String digits= new String();
try {
ch= skipSpaces(reader);
while((char)ch!=' ' && (char)ch!='\n' && ch!=-1) {
digits+=(char)ch;
ch=reader.read();
}
try {
ch=Integer.parseInt(digits);
}
catch (NumberFormatException e) {
Debug.out.println("Warning, could not convert "+digits+
" to a number!");
ch=0;
}
}
catch(IOException e) {
Debug.out.println("Failure");
}
return ch;
}
static public double getDouble(Reader reader) {
int ch=' ';
String digits= new String();
double res=0.0;
try {
ch= skipSpaces(reader);
while((char)ch!=' ' && (char)ch!='\n' && ch!=-1) {
digits+=(char)ch;
ch=reader.read();
}
res=Double.valueOf(digits).doubleValue();
}
catch(IOException e) {
Debug.out.println("Failure");
}
return res;
}
static public String getString(Reader reader) {
String str=new String();
int ch=' ';
try {
ch= skipSpaces(reader);
while ((char)ch!=' ' && (char)ch!='\n' && ch!=-1) {
str+=(char)ch;
ch=reader.read();
}
}
catch (IOException e) {
Debug.out.println("Failure");
}
return str;
}
}