java文件操作_Java文件操作 - 董氏强强的个人页面 - OSCHINA - 中文开源技术交流社区...

1.创建目录与文件

本节我们用到文件操作的内容有File类中的mkdir()方法和createNewFile()方法,其中mkdir()用于创建文件目录,createNewFile()方法用于创建文件。源码如下:

public static void main(String[] args) throws IOException{

File file=new File("e://java目录");

boolean b=file.mkdir();

if(b){

System.out.println("目录创建成功!");

file=new File("e://java目录//java.txt");

boolean c=file.createNewFile();

if(c){

System.out.println("文件创建成功!");

}else{

System.out.println("文件创建失败!");

}

}else{

System.out.println("目录创建失败!");

}

}

2.递归法遍历文件

这里简单写一个递归遍历文件目录的例子。源码如下:

public static void listFile(File file){

if(file!=null){

if(file.isDirectory()){ //是目录

File f[]=file.listFiles(); //遍历目录

if(f!=null){

for(int i=0;i

listFile(f[i]); //递归调用

}

}

}else{ //是文件

System.out.println("file");

}

}

}

3.文件复制(读写)

下面的两个函数实现了文件的缓冲复制和非缓冲复制的方法。

public class IOStreamTest {

/*

* 缓冲

*/

public static void bufferStream() throws Exception {

BufferedInputStream bufferedInputStream=new BufferedInputStream(new FileInputStream("F://2014大学英语六级词汇.doc"));

BufferedOutputStream bufferedOutputStream=new BufferedOutputStream(new FileOutputStream("E://复制的文件1.doc"));

int b=0;

long startTime=System.currentTimeMillis();

while((b=bufferedInputStream.read())!=-1){

bufferedOutputStream.write(b);

}

bufferedInputStream.close();

bufferedOutputStream.close();

long endTime=System.currentTimeMillis();

System.out.println("缓冲花费的时间是:"+(endTime-startTime));

}

/*

* 非缓冲

*/

public static void stream() throws Exception {

InputStream inputStream=new FileInputStream("F://2014大学英语六级词汇.doc");

OutputStream outputStream=new FileOutputStream("E://复制的文件.doc");

int b=0;

long startTime=System.currentTimeMillis();

while((b=inputStream.read())!=-1){

outputStream.write(b);

}

inputStream.close();

outputStream.close();

long endTime=System.currentTimeMillis();

System.out.println("非缓冲花费的时间是:"+(endTime-startTime));

}

public static void main(String[] args) throws Exception {

stream();

bufferStream();

}

}

4.web中文件上传

File file = new File("d:/10085temp");

if (!file.exists()) {

file.mkdirs();

}

String dateString = DateUtil.formatString(new Date(), "yyyyMMddHHmmss");

FileOutputStream fos = new FileOutputStream("d:/10085temp"+"/"+dateString+".jpg");

int size = 0;

byte[] buffer2 = new byte[2048];

while ((size =in.read(buffer2, 0, 2048)) != -1) {

fos.write(buffer2, 0, size);

}

fos.close();

本文主要写了一些java文件io操作的一些内容,相互学习。

关注微信号获得更多文章:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值