问题描述
操作文件有很多类都可以:RandomAccessFile字节流(FileOutputStreamFileInputStream)字符流(FileReaderFileWriter),请问它们间有什么区别,分别在什么场合用,谢谢
解决方案
解决方案二:
该回复于2011-04-12 11:21:32被版主删除
解决方案三:
你已经说了是两大类:字节流stream和字符流Reader用字符流的地方都可以用字节流,比如从txt文件中读取字符串,字符流方便,但是用字节流的地方未必能用字符流,比如图片拷贝之类其它就是怎么组合使用,提高IO效率的问题了,比如一般都是用buffer包装一下
解决方案四:
RandomAccessFile:此类的实例支持对随机访问文件的读取和写入publicclassFileReaderextendsInputStreamReaderInputStreamReader是字节流通向字符流的桥梁:它使用指定的charset读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。每次调用InputStreamReader中的一个read()方法都会导致从底层输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从底层流读取更多的字节,使其超过满足当前读取操作所需的字节。字节流、字符流楼上的正解。好好琢磨课本吧,还有查查API,应该还有什么的对象流。。。
解决方案五:
还是不太清楚什么时候用RandomAccessFile什么时候用文件的字节流或字符流?
解决方案六:
字节流字符流的使用你看看书和API难道你使用字符流就可以读取一个图片文件?不能吧仔细想想在API中你查一下RandomAccessFile构造它继承关系是什么再怎么读取和写入都是字节流的操作
解决方案七:
该回复于2011-04-12 13:42:52被版主删除
解决方案八:
先百度
解决方案九:
RandomAccessFile:此类的实例支持对随机访问文件的读取和写入publicclassFileReaderextendsInputStreamReaderInputStreamReader是字节流通向字符流的桥梁:它使用指定的charset读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。每次调用InputStreamReader中的一个read()方法都会导致从底层输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从底层流读取更多的字节,使其超过满足当前读取操作所需的字节。
解决方案十:
能否讲讲各类间的关系
解决方案十一:
百度吧!!!!!!!!!!!!!!!!!!!
解决方案十二:
引用4楼sunrisefe的回复:
还是不太清楚什么时候用RandomAccessFile什么时候用文件的字节流或字符流?
RandomAccessFile、文件字节流一般用于二进制文件文件字符流一般用于文本文件当然了,文本文件也能使用字节流来读取。但是二进制文件肯定是不能使用字符流来读取的。
解决方案十三:
很好的区分方法:你用Windows自带的那个记事本打开一个文件,如果你能看得出这里面是字的话那就是文本文件,如果是乱码的话那就是二进制文件。
解决方案十四:
你可以看一下APIRandomAccessFile:此类的实例支持对随机访问文件的读取和写入,随机访问文件的行为类似存储在文件系统中的一个大型byte数组然后你在看一下RandomAccessFile中的方法应该明白了吧,RandomAccessFile类中方法比较丰富,可以读取写入任何数据类型的数据,而且写出来的代码也简洁。FileOutputStreamFileInputStream类中的写入写出方法相对RandomAccessFile来说就少得很了,所以关键用哪个类还要看你的需求。怎么方便就怎么用。一般IO操作追求方便和高效。所以具体怎么方便怎么高效就怎么用了。