javaio文件操作
2017-04-17 08:18
369 查看
创建文件和删除文件
File.separator代替'/'实现路径分割
列出指定目录下文件
创建文件,将数据写入文件,从文件读取数据
递归输出指定文件对象的目录文件名
InputStream字节输入流
OutputStream字节输出流
import java.io.*;
import javax.imageio.stream.FileImageInputStream;
public class A {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
File file = new File("c://测试.txt");
OutputStream out = new FileOutputStream(file);//添加rue,文件会追加
String str = "hahahahahha aa";
byte[] b = str.getBytes();
out.write(b);
out.close();
}
}
复制一份文件
package no1;
import java.io.*;
import javax.imageio.stream.FileImageInputStream;
public class A {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
//f1();非缓冲方式,耗时
//f2();缓冲方式,较快
}
/*
* 非缓冲方式,耗时
*/
public static void f1() throws IOException{
File file = new File("c://测试.txt");
InputStream in= new FileInputStream(file);
OutputStream out = new FileOutputStream("c://复制的测试文件.txt");
int b=0;
while ((b=in.read())!=-1){//b获取内容
out.write(b);
}
in.close();
out.close();
}
/*
* 缓冲方式,较快
*/
public static void f2() throws IOException{
BufferedInputStream in = new BufferedInputStream(new FileInputStream("c://测试.txt"));
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("c://复制的测试文件2.txt"));
int b=0;
while ((b=in.read())!=-1){//b获取内容
out.write(b);
}
in.close();
out.close();
}
}
File.separator代替'/'实现路径分割
package no4; import java.io.File; import java.io.IOException; public class M{ public static void main(String[] args) throws IOException{ File file = new File("C:"+ File.separator+"AAA"+File.separator+"DATA.txt"); //file.mkdirs();//这样同时也将DATA.txt设置成了目录 //这样就会先创建设置DATA.txt前成 目录,在设置DATA.txt为文件 file.getParentFile().mkdirs(); file.createNewFile(); } }
列出指定目录下文件
package no4; import java.io.File; import java.io.IOException; public class M{ public static void main(String[] args) throws IOException{ File file = new File("C:"+ File.separator+"Windows"); if(file.exists() && file.isDirectory()){ //文件存在且是文件夹 File[] r = file.listFiles();//列出指定的目录内容 for(int i=0; i<r.length; i++){ System.out.println(r[i]); } } } }
创建文件,将数据写入文件,从文件读取数据
package no4; import java.io.*; public class A{ public static void main(String args[])throws IOException{ /* File file = new File("C:"+File.separator+"Hello1.txt"); // 创建文件 file.createNewFile(); FileWriter writer = new FileWriter(file); // 向文件写入内容 writer.write("This\n is\n an\n example\n"); writer.flush();//强制将缓冲区数据发送 writer.close(); // 创建 FileReader 对象 FileReader fr = new FileReader(file); char [] a = new char[50]; fr.read(a); // 读取数组中的内容 for(char c : a) System.out.print(c); // 一个一个打印字符 fr.close();*/ File file = new File("C:"+File.separator+"Hello.txt"); //创建Hello文件 file.createNewFile(); //向文件中写入数据 FileWriter writer = new FileWriter(file); writer.write("hahahaha\nxixixi"); writer.flush();//强制将缓冲区数据发送 writer.close(); //从文件中读取 FileReader reader = new FileReader(file); char[] ch = new char[100]; reader.read(ch); for (char c : ch){ System.out.print(c); } reader.close(); } }
递归输出指定文件对象的目录文件名
package no4; import java.io.*; public class Aa { public static void main(String[] args) { // TODO 自动生成的方法存根 File file = new File("C://Windows"); print(file); } public static void print(File file){ if (file != null){ if (file.isDirectory()){//当前file是目录 System.out.println(file);//打印出目录 File file1[]=file.listFiles();//存放目录列表 if (file1 != null){ for (int i=0; i<file1.length; i++){//遍历每个列表项 print(file1[i]);//递归调用 } } } else{//是文件直接打印 System.out.println(file); } } } }
InputStream字节输入流
import java.io.*; import javax.imageio.stream.FileImageInputStream; public class A { public static void main(String[] args) throws IOException { // TODO 自动生成的方法存根 File file = new File("c://测试.txt"); //InputStream 所有字节流输出的父类 //FileInputStream 从文件系统中的某个文件中获得输入字节是InputStream的子类 InputStream in = new FileInputStream(file); int flen = (int)file.length();//向下转型 byte[] b = new byte[flen]; in.read(b);// 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中。 in.close(); System.out.println("读取到了:"+new String(b)); } }
OutputStream字节输出流
import java.io.*;
import javax.imageio.stream.FileImageInputStream;
public class A {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
File file = new File("c://测试.txt");
OutputStream out = new FileOutputStream(file);//添加rue,文件会追加
String str = "hahahahahha aa";
byte[] b = str.getBytes();
out.write(b);
out.close();
}
}
复制一份文件
package no1;
import java.io.*;
import javax.imageio.stream.FileImageInputStream;
public class A {
public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根
//f1();非缓冲方式,耗时
//f2();缓冲方式,较快
}
/*
* 非缓冲方式,耗时
*/
public static void f1() throws IOException{
File file = new File("c://测试.txt");
InputStream in= new FileInputStream(file);
OutputStream out = new FileOutputStream("c://复制的测试文件.txt");
int b=0;
while ((b=in.read())!=-1){//b获取内容
out.write(b);
}
in.close();
out.close();
}
/*
* 缓冲方式,较快
*/
public static void f2() throws IOException{
BufferedInputStream in = new BufferedInputStream(new FileInputStream("c://测试.txt"));
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("c://复制的测试文件2.txt"));
int b=0;
while ((b=in.read())!=-1){//b获取内容
out.write(b);
}
in.close();
out.close();
}
}
相关文章推荐
- java io对文件的操作
- Java中各种文件类型操作的代码与详细文件IO讲解
- java.io.file 各种文件操作
- java.io.file 各种文件操作
- java中IO操作 利用文件流 过滤流对文件进行读写操作
- 典型文件操作 (java.io.*)
- java IO操作与字节流(二)文件的随机读取
- java IO/NIO操作文件
- 使用java.io.*操作文件的拆分与合并,Application一例!
- 【Java IO】文件操作
- java io 对文件操作的示例
- java IO 系统-java 文件操作大全
- java IO操作与字节流(一)File创建,与文件的查找
- Java IO 文件读写相关的操作
- java中IO操作 利用文件流 过滤流对文件进行读写操作
- java io文件操作总结
- 使用java.io.*操作文件的拆分与合并,Application一例!
- 使用java.io.*操作文件的拆分与合并,Application一例!
- 2011-08-30 交作业(java io 文件基本操作)
- java中IO操作 利用文件流 过滤流对文件进行读写操作