1,
package day06;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.io.IOException;
import java.io.RandomAccessFile;
/*
* 复制文件
*/
public class CopyDemo1 {
* 复制文件
*/
public class CopyDemo1 {
public static void main(String[] args) throws IOException {
/*
* 创建一个RAF读取原文件,
*
*/
RandomAccessFile raf=new RandomAccessFile("bee.png","r");
RandomAccessFile rad=new RandomAccessFile("raf.png","rw");
int b=-1;
while((b=raf.read())!=-1){
rad.write(b);
}
//int d=-1;
System.out.println("复制完毕");
}
/*
* 创建一个RAF读取原文件,
*
*/
RandomAccessFile raf=new RandomAccessFile("bee.png","r");
RandomAccessFile rad=new RandomAccessFile("raf.png","rw");
int b=-1;
while((b=raf.read())!=-1){
rad.write(b);
}
//int d=-1;
System.out.println("复制完毕");
}
}
2,
package day06;
/*
* 通过提高每次读写的数据量来减少读写次数提高读写效率
*/
/*
* 通过提高每次读写的数据量来减少读写次数提高读写效率
*/
import java.io.IOException;
import java.io.RandomAccessFile;
import java.io.RandomAccessFile;
public class CopyDemo2 {
public static void main(String[] args) throws IOException {
/*
* 尝试读取给定的字节数组总长度的字节量
*
* */
RandomAccessFile src=new RandomAccessFile("bee.png","r");
RandomAccessFile src1=new RandomAccessFile("bee1.png","rw");
byte []buf=new byte[1024*10];
int len=-1;
while((len=src.read(buf))!=-1){
src1.write(buf);
}
System.out.println("写完毕");
}
/*
* 尝试读取给定的字节数组总长度的字节量
*
* */
RandomAccessFile src=new RandomAccessFile("bee.png","r");
RandomAccessFile src1=new RandomAccessFile("bee1.png","rw");
byte []buf=new byte[1024*10];
int len=-1;
while((len=src.read(buf))!=-1){
src1.write(buf);
}
System.out.println("写完毕");
}
}
3,
package day06;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.io.RandomAccessFile;
/*
* java.io.RandomAccessFile
* 基于指针进行读写,在指针处写,自动后移
* 可以读写
*
* 能自动创建文件但是不能自动创建目录
*
* RandomAccessFile(
* String path,String mode)
*
* RandomAccessFile(
* File file,String mode)
*
* 第二个参数为访问模式:
* r:读模式
* W;写模式
*
*/
public class RandomAccessFileDemo1 {
public static void main(String[] args) throws IOException {
RandomAccessFile rat=new RandomAccessFile("raf.dat","rw");
/*
* 写出给定int值对应的2进制的低8位
*/
rat.write(256);
System.out.println("写入完毕");
int d=rat.read();//指针移动!
System.out.println(d);
rat.close();
}
}
* java.io.RandomAccessFile
* 基于指针进行读写,在指针处写,自动后移
* 可以读写
*
* 能自动创建文件但是不能自动创建目录
*
* RandomAccessFile(
* String path,String mode)
*
* RandomAccessFile(
* File file,String mode)
*
* 第二个参数为访问模式:
* r:读模式
* W;写模式
*
*/
public class RandomAccessFileDemo1 {
public static void main(String[] args) throws IOException {
RandomAccessFile rat=new RandomAccessFile("raf.dat","rw");
/*
* 写出给定int值对应的2进制的低8位
*/
rat.write(256);
System.out.println("写入完毕");
int d=rat.read();//指针移动!
System.out.println(d);
rat.close();
}
}
4,
package day06;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.io.IOException;
import java.io.RandomAccessFile;
public class RandomAccessFileDemo2 {
public static void main(String[] args) throws IOException {
RandomAccessFile raf=new RandomAccessFile("raf.dat","r");
/*
* 读取一个字节,并以10进制的int型返回
* 返回值为-1,表示读到了文件末尾
*/
int m=raf.read();
System.out.println(m);
}
RandomAccessFile raf=new RandomAccessFile("raf.dat","r");
/*
* 读取一个字节,并以10进制的int型返回
* 返回值为-1,表示读到了文件末尾
*/
int m=raf.read();
System.out.println(m);
}
}