随笔分类 - io
摘要:版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/CharJay_Lin/article/details/81810922文章目录前言1.阻塞与同步2.BIO与NIO对比3.NIO简介4.缓冲
阅读全文
摘要:本文链接:https://blog.csdn.net/bingbeichen/article/details/83617163 Java中的IO部分比较复杂,具体可参看书籍《Java NIO》和《Netty权威指南》。在此,仅对BIO、NIO和AIO进行概述性梳理,未涉及到具体实现细节,后续有空将深
阅读全文
摘要:createNewFile文件不存在则创建,存在则不创建并返回false,文件路径必须存在才可创建路径下的文件(注意它只能创建文件,即如果你给了/storage/emulated/0/hello/snow/这样一个路径,它最后也只是在hello文件夹中创建了snow的未知文件而不是文件夹,如上所述的
阅读全文
摘要:本文链接:https://blog.csdn.net/wh_19910525/article/details/9314675 File的这三个方法在api中都有说明,仅以程序为例说明。 package test; import java.io.File;import java.io.IOExcept
阅读全文
摘要:最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File.createNewFile() 方法,一时间不知道两者到底有什么区别,感觉都是创建新文件嘛,后来查看api文档介绍,并经过自己动手试验,终于有了一个较为清楚地认识。 1. File 的 createN
阅读全文
摘要:1:read() : 从输入流中读取数据的下一个字节,返回0到255范围内的int字节值。如果因为已经到达流末尾而没有可用的字节,则返回-1。在输入数据可用、检测到流末尾或者抛出异常前,此方法一直阻塞。 InputStream.read()这个方法是从流里每次只读取读取一个字节,效率会非常低。 更好
阅读全文
摘要:个人好奇ByteArrayInputStream,到底是有什么用于是百度了一些资料 整合了下,********这两个类对于要创建临时性文件的程序以及网络数据的传输、数据压缩后的传输等可以提高运行的的效率,可以不用访问磁盘。同样有StringReader与StringWriter类以字符IO流的方式处
阅读全文
摘要:转载:https://blog.csdn.net/lilidejing/article/details/37913627 当需要用到InputStream获取数据时,这时就需要读取InputStream里面的数据了。 InputStream读取流有三个方法,分别为read(),read(byte[]
阅读全文
摘要:BufferedInputStream类相比InputStream类,提高了输入效率,增加了输入缓冲区的功能 不带缓冲的操作,每读一个字节就要写入一个字节,由于涉及磁盘的IO操作相比内存的操作要慢很多,所以不带缓冲的流效率很低 带缓冲的流,可以一次读很多字节,但不向磁盘中写入,只是先放到内存里。等凑
阅读全文
摘要:转载:https://www.cnblogs.com/DONGb/p/7844123.html 先来看一下流的概念: 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成。 程序中的输入输出都是以流的形式保
阅读全文
摘要:本文链接:https://blog.csdn.net/qq_42594368/article/details/81004530一、简介 IO流是用来处理设备之间的数据传输的,数据一般储存在设备上 设备:硬盘,光盘,内存等等,内存是临时储存的 Java对数据的操作是采用流的方式 按照操作的数据分为:字
阅读全文
摘要:两者关系: FileReader继承自InputStreamReader ; 区别: InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。 每次调用 InputSt
阅读全文
摘要:先来个例子理解一下概念,以银行取款为例: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码),OS需要支持异步I
阅读全文
摘要:最近在看 JAVA NIO 的相关知识,了解一下IO的底层实现原理。 IO涉及到的底层的概念大致如下: 1) 缓冲区操作。2) 内核空间与用户空间。3) 虚拟内存。4) 分页技术。 一,虚拟存储器 虚拟存储器是硬件异常(缺页异常)、硬件地址翻译、主存、磁盘文件和内核软件的完美交互,它为每个进程提供了
阅读全文