java中的`InputStream“DataInputStream`和`BufferedInputStream`的区别?
java中的InputStream
DataInputStream
和BufferedInputStream
的区别?
如果问题是:“这些类之间有什么区别”,这里是摘要,但请阅读javadoc以获取更多信息:
inputStream是从流(网络或文件)读取字节的基类。 它提供了从流中读取字节并检测流结束的function。
DataInputStream是一种直接读取数据作为原始数据类型的InputStream。
BufferedInputStream是一种inputStream,它从流中读取数据并使用缓冲区来优化对数据的速度访问。 数据基本上是提前读取的,这减少了磁盘或网络访问。
我想你要求区别所以我要提供一些细节
Input Stream means
:此抽象类是表示输入字节流的所有类的超类。需要定义InputStream子类的应用程序必须始终提供返回输入的下一个字节的方法。
DataInputStream
:数据输入流允许应用程序以与机器无关的方式从基础输入流中读取原始Java数据类型。 应用程序使用数据输出流来写入稍后可由数据输入流读取的数据。
欲了解更多请使用此链接http://docs.oracle.com/javase/6/docs/api/java/io/DataInputStream.html
BufferedInputStream
:BufferedInputStream为另一个输入流添加function – 即缓冲输入并支持标记和重置方法的function。 创建BufferedInputStream时,会创建一个内部缓冲区数组。 当读取或跳过来自流的字节时,内部缓冲区根据需要从包含的输入流中重新填充,一次多个字节。
您可以使用instanceof
运算符测试不同的InputStream
实现:
InputStream in = ... if (in instanceof DataInputStream) { // we have an DataInputStream instance } else if (in instanceof BufferedInputStream) { // we have an BufferedInputStream instance }
- 当Decrypting Image时,给出了javax.crypto.BadPaddingException:pad块损坏的Android
- 如何将这些打印的字母存储到数组中?
- Java TCP / IP套接字如何报告应用程序的传输成功或失败?
- 使用ReentrentLock和Synchronized(对象)有什么区别?
- 重启Android后自定义小部件中的Android持久性可检查菜单
- 如何在Android中的onResponse之外使用变量?
- Android,在网络共享和连接到接入点时检测WiFi的本地IP和子网掩码
- 如何在android中将多个图像上传到firebase?
- 在Java中初始化List <List >