三种处理流
三种处理流
标准输入输出流
- System.in:标准的输入流,默认从键盘输入
- System.out:标准的输出流,默认从控制台输出
通过System类的setIn(InputStream is),setOut(PrintStream out)方法对默认设备进行改变。
- public static void setIn(InputStream in)
- public static void setOut(PrintStream out)
练习
从键盘输入字符串,要求将读取到的整行字符串转成大写输出。然后继续进行输入操作,直至当输入“e”或者“exit”时,退出程序。
思路:System.in ----> 转换流 ---->BufferedReader的readLine()方法
(readLine()方法的使用见如下网址)
https://www.cnblogs.com/CrabDumplings/p/13458405.html

代码实现
public static void main(String[] args) {
BufferedReader br = null;
try {
InputStreamReader isr = new InputStreamReader(System.in);
br = new BufferedReader(isr);
while(true){
System.out.println("请输入字符串:");
String data = br.readLine();
if(data.equalsIgnoreCase("e") || data.equalsIgnoreCase("exit")){
System.out.println("程序结束");
break;
}
String upperCase = data.toUpperCase();
System.out.println(upperCase);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if(br != null)
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

打印流(了解)
实现将基本数据类型的数据格式转化为字符串输出
说明
PrintStream和PrintWriter
- 提供了一系列重载的print()和println()方法,用于多种数据类型的输出
- PrintStream和PrintWriter的输出不会抛出IOException异常
- PrintStream和PrintWriter有自动flush功能
- PrintStream 打印的所有字符都使用平台的默认字符编码转换为字节。
- 在需要写入字符而不是写入字节的情况下,应该使用 PrintWriter类
数据流
为了方便地操作Java语言的基本数据类型和String的数据,可以使用数据流。
数据流有两个类:(用于读取和写出基本数据类型、String类的数据)
- DataInputStream 和 DataOutputStream
- 在分别“套接”在 InputStream 和 OutputStream 子类的流上
DataInputStream 中的方法
- boolean readBoolean()
- byte readByte()
- char readChar()
- float readFloat()
- double readDouble()
- short readShort()
- long readLong()
- int readInt()
- String readUTF()
- void readFully(byte[] b)
DataOutputStream 中的方法
将上述的方法的read改为相应的write即可

浙公网安备 33010602011771号