课程
/后端开发
/Java
/文件传输基础——Java IO流
raf.write('A'); raf.write('b');
重复run这个文件,为什么raf文件中始终只有一个Ab?难道不是每次执行一次都会添加一次Ab吗
2017-03-03
源自:文件传输基础——Java IO流 3-1
正在回答
因为你每run一次,指针都是从0开始的,每run一次都改写了上一次内容,你可以尝试运行一下老师的程序,然后再在程序前添加 raf.seek(12),使下一次从12byte处开始写,运行后你会发现输出长度为24
慕粉4241372 提问者
向上看 回复 慕粉4241372 提问者
public static void main(String[] args)throws IOException { File demo=new File("d://demo"); if(!demo.exists()) demo.mkdir(); File file=new File(demo,"raf.text"); if(!file.exists()) file.createNewFile(); RandomAccessFile raf=new RandomAccessFile(file, "rw"); raf.write('A'); raf.write('b'); }
之前的代码是建立这个文件,然后Run相当于重新建立一次这个文件
举报
为您介绍IO流的使用,以及对象的序列化和反序列化的内容
2 回答.write()方法的写入问题
3 回答为什么write(buf, 0, b)会报错,改成write(buf, 0, buf.length)就不会报错了
2 回答write方法不是每次只能写入一个字节么,为什么对于汉字,只调用一次write就能全部写入呢?
4 回答write方法不是每次只能写入一个字节么,为什么对于汉字,只调用一次write就能全部写入呢?
3 回答关于重写writeObject方法需要传入一个ObjectOutpuStream参数,但调用这个方法却实际传入一个Stu对象?