读取键盘录入:
System.out:对应的是标准输出设备-控制台
System.in:对应的标准输入设备-键盘
代码:
import java.io.*;
public class code
{
public static void main(String[] args) throws IOException {
InputStream in = System.in;
StringBuilder sb = new StringBuilder();
while(true) {
int ch = in.read();
if(ch=='\r')
continue;
if(ch=='\n') {
String s = sb.toString();
if("over".equals(s))
break;
System.out.println(s.toUpperCase());
sb.delete(0, sb.length());
}
else
sb.append((char)ch);
}
}
}
readLine方法是字符流BufferedReader类中的方法,而键盘录入的read方法是字节流InputStream的方法
代码:
import java.io.*;
public class code
{
public static void main(String[] args) throws IOException {
//获取键盘录入对象
InputStream in = System.in;
//将字节流对象转成字符流对象,使用转换流:InputStreamReader
InputStreamReader isr = new InputStreamReader(in);
//为了提高效率,将字符串进行缓冲区技术高效操作,使用:BufferedReader
BufferedReader bufr = new BufferedReader(isr);
String len = null;
while((len=bufr.readLine())!=null) {
if("over".equals(len))
break;
System.out.println(len.toUpperCase());
}
bufr.close();
}
}
写入转换流 代码:
import java.io.*;
public class code
{
public static void main(String[] args) throws IOException {
//获取键盘录入对象
InputStream in = System.in;
//将字节流对象转成字符流对象,使用转换流:InputStreamReader
InputStreamReader isr = new InputStreamReader(in);
//为了提高效率,将字符串进行缓冲区技术高效操作,使用:BufferedReader
BufferedReader bufr = new BufferedReader(isr);
OutputStream out = System.out;
OutputStreamWriter osw = new OutputStreamWriter(out);
BufferedWriter bufw = new BufferedWriter(osw);
String len = null;
while((len=bufr.readLine())!=null) {
if("over".equals(len))
break;
bufw.write(len.toUpperCase());
bufw.newLine();
bufw.flush();
}
bufr.close();
}
}