java- IO

来源:互联网 发布:wan端口未连接 编辑:程序博客网 时间:2024/06/06 05:02

IO

IO有许多种,比如说比如:

1.使用字节流和字符流进行文件的读写和File操作

1.1些new一个file然后 定义一个名 在发你的路径放进去。

//代码操作一下:

file file=new file("定义你这个文本的名.webm");
file fileOut=new file("你要把文件发在哪里的位置");

2.2开始写和读

文件字节输入流(读)

fileinputstream fis=new  FileInputStream(file);

文件字节缓冲输入流

BufferedInputStream bis=new BufferedInputStream(fis,10);

文件字节输出流(写)

FileOutputStream fos=new FileOutputStream(fileOut+"\\"+file.getName());

文件字节缓冲输出流

BufferedOutputStream bos=new BufferedOutputStream(fos);
int len=0;
byte[] b=new byte[1024];

获取系统时间

long before=System.currentTimeMillis();

没有使用缓冲流

whie(len=bis.read(b)!=-1){

//写

fors.write(b,0, len);

}

//使用缓冲流

while((len=nis.read(b))!=-1){

bos.write(b,0, len);

}

bos.close();

bis.close();

login safter=system.currentTimeMillis();

System.out.println("复制OK:"+(after-before));

2.递归:

代码操作一下:

public static void main(String[] args) {
File f=new File("C:\\Users\\Administrator\\Desktop\\a");
read(f);
}
//文件 【文件夹】
 
public static void read(File f){
if(f.isDirectory()){
//文件夹
//列出该文件夹下所有的文件
File fs[]=f.listFiles();
if(fs.length>0){
//有子目录或者子文件
for (File file : fs) {
if(file.isDirectory()){
read(file);
}else{
System.out.println(file.getAbsolutePath());
}
}
}else{
//没有儿子目录或者子文件
System.out.println(f.getAbsolutePath());
}
}else{
//文件
System.out.println(f.getAbsolutePath());
}
}


3-转换流-序列化

public static void mian(String [ ] args){

File file=new  file("文件.txt");

File fileOut=new file("路径");

//获取字节文输入流

FileInputStream fis=new FileInputStream(file);

//使用字符缓冲输入流
BufferedReader br=new BufferedReader(new InputStreamReader(fis));
String s=br.readLine();
System.out.println(s);

//打印流
PrintWriter pw=new PrintWriter(file);
pw.write("新内容");
pw.close();

} catch (Exception e) {
e.printStackTrace();
}
}


原创粉丝点击