方式一:
public static void inKey() throws IOException {
// TODO Auto-generated method stub
InputStream input=System.in;
StringBuilder s=new StringBuilder();
int ch=0;
while((ch=input.read())!=-1)
{
if(ch=='\r')
continue;
if(ch=='\n')
{
//存储之前确定是否换行,若换行则不存储
String temp=s.toString();
if(temp.equals("over"))
break;
System.out.println(s.toString().toUpperCase());
s.delete(0, s.length());
}
else s.append((char)ch);
}
}
方式二:
public static void inKey() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in);
//创建缓冲区读取流,关联字符流
BufferedReader br=new BufferedReader(isr);
String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
else System.out.println(str.toUpperCase());
}
方式三:
public static void inKey2() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in);
//创建缓冲区读取流
BufferedReader br=new BufferedReader(isr);
//创建字节输出流
OutputStream os=System.out;
//将字节流转换成字符流
OutputStreamWriter osw=new OutputStreamWriter(os);
String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
osw.write(str.toUpperCase()+"\r\n");
osw.flush();
}
}
方式四:
public static void inKey3() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in);
//创建缓冲区读取流
BufferedReader br=new BufferedReader(isr);
//创建字节输出流
OutputStream os=System.out;
//将字节流转换成字符流
OutputStreamWriter osw=new OutputStreamWriter(os);
//创建缓冲区输出流
BufferedWriter bw=new BufferedWriter(osw);
String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
bw.write(str.toUpperCase());
bw.newLine();
bw.flush();
}
}
最简单的写法:
public static void inKey4() throws IOException {
// TODO Auto-generated method stub
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
String str=null;
while((str=br.readLine())!=null)
{
if("over".equals(str)) break;
bw.write(str.toUpperCase());
bw.newLine();
bw.flush();
}
}