InputStream、BuffreredInputStream、InputStreamReader 和 BufferedReader 之间有什么关系?
What is the relation between InputStream, BuffreredInputStream, InputStreamReader and BufferedReader?
我总是很困惑何时处理我的输入数据,如何处理,哪个处理。不同的时间我找到不同的解决方案。我也不清楚他们的层次结构。
InputStream 是所有输入流和读取器的父级 class。具有 Stream 关键字的 类 将处理字节,而具有 Reader 关键字的 classes 将处理字符。
缓冲区是这些流的包装器,以减少系统调用并提高性能和读取速度。
非缓冲流每次 return 单字节,而缓冲流不会 return 直到缓冲区变满。
例如如果你采用 BufferedReader 你可以使用 readLine()
读取整行但是在非缓冲流中你必须使用 read()
方法读取单个字符。
我总是很困惑何时处理我的输入数据,如何处理,哪个处理。不同的时间我找到不同的解决方案。我也不清楚他们的层次结构。
InputStream 是所有输入流和读取器的父级 class。具有 Stream 关键字的 类 将处理字节,而具有 Reader 关键字的 classes 将处理字符。
缓冲区是这些流的包装器,以减少系统调用并提高性能和读取速度。
非缓冲流每次 return 单字节,而缓冲流不会 return 直到缓冲区变满。
例如如果你采用 BufferedReader 你可以使用 readLine()
读取整行但是在非缓冲流中你必须使用 read()
方法读取单个字符。