昨天在学习从键盘录入字节流数据,打印到控制台。
- import java.io.IOException;
- import java.io.InputStream;
- class ReadKeyDemo
- {
- public static void main(String[] args) throws IOException
- {
- //获取键盘读取流
- InputStream is = System.in;
-
- //创建容易,接收字符流
- StringBuilder sb = new StringBuilder();
- int ch = 0;//定义变量记录读取到的字节,并循环获取
- while ((ch=is.read())!=-1)
- {
- //在存储之前需要判断是否是换行标记,是的话不存储
- if (ch=='\r')
- {
- continue;
- }
- if (ch=='\n')
- {
- String temp = sb.toString();
- if ("over".equals(temp))
- {
- break;
- }
- System.out.println(temp.toUpperCase());
- sb.delete(0,sb.length());
- }
- else
- sb.append((char)ch);//将读取到的字节存储到StringBuilder中
- }
- }
- }
复制代码
代码中没有关闭读写流的is.close();本人查看了其他几个资料。有的有,有的没有,不知道具体怎么解释,个人认为是键盘录入,只要停止录入或退出了就相当于关闭了,就没必要写了,不知道正确与否?请赐教 |
|