Java编程那些事儿92——IO操纵注意问题[Java编程]
本文“Java编程那些事儿92——IO操纵注意问题[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
11.3.4 注意问题
上面介绍了IO类的基本利用,熟习了实体流和装潢流的基本利用,但是在IO类实际利用时,还是会碰到一系列的问题,下面介绍一些大概会常常碰到的问题.
11.3.4.1 类的挑选
关于初次接触IO技术的初学者来说,IO类体系博识高深,类的数目对比宏大,在实际利用经常常会无所适从,不知道该利用那些类举行编程,下面介绍一下关于IO类挑选的一些本领.
挑选类的第一步是挑选符合的实体流.
挑选实体流时第一步是按照衔接的数据源种类举行挑选,比方读写文件应当利用文件流,如FileInputStream/FileOutputStream、FileReader/FileWriter,读写字节数组应当利用字节数组流等,如ByteArrayInputStream/ByteArrayOutputStream.
挑选实体流时第二步是挑选符合方向的流.比方举行读操作时应当利用输入流,举行写操作时应当利用输出流.
挑选实体流时第三步是挑选字节俭或字符流.除了读写二进制文件,或字节俭中没有对应的流时,普通都优先挑选字符流.
经过以上步骤今后,便可以挑选到符合的实体流了.下面说一下装潢流的挑选问题.
在挑选IO类时,实体流是必须的,装潢流是可选的.别的在挑选流时实体流只能挑选一个,而装潢流可以挑选多个.
挑选装潢流时第一步是挑选符合要求功效的流.比方需求缓冲流的话挑选BufferedReader/BufferedWriter等,有些时刻也大概只是为了利用某个装潢流内部供应的办法.
挑选装潢流时第二步是挑选符合方向的流,这个和实体流挑选中的第二步一致.
当挑选了多个装潢流今后,可以利用流之间的多层嵌套实现要求的功效,流的嵌套之间没有次序.
11.3.4.2 非顺次读取流数据
由于IO类计划的特点,在实际读取时,只能顺次读取流中的数据,并且在普通情形下,已经读取过的数据无法再举行读取.假如需求反复读取流中某段数据时,普通的做法是将从流中读取的数据利用数组存储起来,然后按照需求读取数组中的内容便可,但是有些时刻,还是有一些特别的情形的,IO类关于这些都举行了支持.
1、中止性的读取流中的数据
关于某些特别格局的文件,比方字体文件等,在实际读取数据时不需求次序举行读取,而只需求按照内容的位置举行读取.这样可以利用流中的skip办法实现.比方:
int n = fis.skip(100);
该行代码的作用是,以流fis当前位置为底子,当前位置可以是流中的任何位置,向后跳过100个单位(字节俭单位为字节,字符流单位是字符),假如再利用read办法持续读取,就是读取腾跃今后新位置的内容,也就相当于跳过了100个单位的内容.
而实际在利用时,实际真正跳过的单位数目作为skip办法的返回值返回.
以上是“Java编程那些事儿92——IO操纵注意问题[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |