/*
直接使用readLine方法来完成键盘录入的一行数据的读取。
readLine是字符流BufferedReader类中的方法。
而键盘录入的read方法是字节流InputStream中的方法。
字节转字符。
*/
import java.io.*;
class TransStreamDemo
{
public static void main(String[] args) throws IOException
{
/*
//获取键盘录入对象
InputStream in=System.in;
//将字节流对象转换为字符流对象,使用转换流。InputStreamReader
InputStreamReader isr=new InputStreamReader(in);
//为了提高效率,将字符串进行缓冲区技术高效操作。使用BufferedReader
BufferedReader br=new BufferedReader(isr);
*/
//键盘录入最常见写法:
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
OutputStream out=System.out;
OutputStreamWriter osw=new OutputStreamWriter(out);
BufferedWriter bw=new BufferedWriter(osw);
String line=null;
while((line=br.readLine())!=null)
{
if(line.equals("over"))
break;
//System.out.println(line.toUpperCase());
bw.write(line.toUpperCase());
bw.newLine();
bw.flush();
}
bw.close();
}
}
/*
键盘输入读取一行,输出一行
*/
import java.io.*;
class KeyInput
{
public static void main(String[] args) throws IOException
{
keyInput();
}
public static void keyInput() throws IOException
{
InputStream in=System.in;
StringBuffer sb=new StringBuffer();
while(true)
{
char ch=(char)in.read();
if(ch=='\r')
continue;
if(ch=='\n')
{
String str=sb.toString();
if(str.equals("over"))
break;
System.out.println(str.toUpperCase());
sb.delete(0,str.length());//清空容器
}
else
sb.append(ch);
}
}
}