* 打印流(永远不会抛出IO异常)
* 操作输出目的(写文件 控制台打印)
* printStream(字节流)
* 构造方法:文件 字节输出流 路径
*
* printWriter(字符流)
* 构造方法: 文件 字节输出流 路径 字符输出流
* 核心功能:可以原样输出到目的端
*
* System.in 是BufferedInputStream 对象
* System.out 是PrintStream 对象(打印流)
private static void fun2() throws IOException {
File file = new File("/Users/lanou/Desktop/Test/dahai.txt");
FileWriter fw = new FileWriter(file);
// 开启自动刷新的办法只对流有效
PrintWriter pw = new PrintWriter(fw, true);
pw.println("dahaiba");
pw.println(true);
// 关闭资源 关闭前会帮你刷新一次缓冲区
pw.close();
}
// 利用System.in 从控制台接收 在打印到控制台(不用Scanner)
// 创建流对象不会卡住你的程序
// 从控制台读取的时候才会卡住程序
System.out.println("请输入");
InputStream in = System.in;
StringBuilder sb = new StringBuilder();
int len = 0;
while (true) {
// 判断停止
if (sb.toString().equals("quit")) {
break;
}
// 读取
len = in.read();
// 判断换行
if (len != '\n') {
sb.append((char) len);
} else {
// 直接打印
System.out.println(sb.toString());
//清空字符串
sb.delete(0, sb.length());
}
}
in.close();