java文件操作

来源:互联网 发布:读写速度测试软件 编辑:程序博客网 时间:2024/06/05 21:08

1.文件的一些操作:

import java.io.File;

import java.io.IOException;
import java.util.Date;

public class file {


public static void main(String [] args)
{
/*创建文件
* boolean createNewFile() 
* 当且仅当不存在具有此抽象路径名指定名称的文件时,
* 不可分地创建一个新的空文件。

* */
File f1 = new File("F:\\java\\测试文件/data.txt");
try {
f1.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(f1.getAbsolutePath());

// 用separator加载“/”
String fileName = "F:"+File.separator+"java"+File.separator
+"测试文件"+File.separator+"test1.doc";
System.out.println(fileName);
File f2 = new File(fileName);
try {
boolean b = f2.createNewFile();
System.out.println("创建文件:"+b);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

/**
* 用creattempFile中的三个参数,第一个参数是前缀,中间一个是文件的后缀,最后一个参数是
* 要创建文件的文件夹,如果该参数为空,则会使用默认的临时文件夹


* */
File f3;
try {

f3 = File.createTempFile("haoh",".java",
null);//C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\haoh4699757272774928914.java
f3 = File.createTempFile("test",".txt",new File("F:/java/测试文件"));
System.out.println(f3);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

/**
* boolean exists() 测试此抽象路径名表示的文件或目录是否存在。
*/
System.out.println(new File("F:/java/测试文件/niho.doc").exists());
System.out.println(new File("F:/java/测试文件/data.txt").exists());
/**
* File getAbsoluteFile() 返回此抽象路径名的绝对路径名形式。
*  String getAbsolutePath()
* 返回此抽象路径名的绝对路径名字符串。
*/
File f4 = new File("F:/java/测试文件/data.txt");
System.out.println(f4.getAbsoluteFile());
System.out.println("输出的仅仅是文件名:"+f4.getName());
System.out.println("得到的是路径:"+f4.getPath());
System.out.println("父目录:"+f4.getParent());
System.out.println(f4.getAbsoluteFile());
/*
* boolean isDirectory() 
          测试此抽象路径名表示的文件是否是一个目录。 
  boolean isFile() 
          测试此抽象路径名表示的文件是否是一个标准文件。 
    这两个要是同时用时,结果必然不同
*/
System.out.println("判断是否为一个标准文件:"+f4.isFile());
System.out.println("判断是否在一个目录:"+f4.isDirectory());
/*
* boolean isHidden() 
         测试此抽象路径名指定的文件是否是一个隐藏文件。 
  long lastModified() 
         返回此抽象路径名表示的文件最后一次被修改的时间。 
  long length()  


* */

System.out.println("是否为隐藏文件:"+f4.isHidden());
System.out.println("文件最后被修改的时间:"+new Date(f4.lastModified()));
System.out.println("文件内容的长度:"+f4.length());

}

}

2.文件夹的一些操作

import java.io.File;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;






public class file1 {
public void fun1()
{


// 输出测试文件夹中所有的文件,并不打印出文件的路径
File  file = new File("F:/java/测试文件");
if(file.isDirectory()){
String[] arry = file.list();
for(String s: arry)
{
System.out.println(s);
}

}
}
/**
* File[] listFiles() 返回一个抽象路径名数组,
* 这些路径名表示此抽象路径名表示的目录中的文件。
*/
public void fun2()
{
File file = new File("F:/java/测试文件");
File[] fs = file.listFiles();
for(File s: fs)
System.out.println(s);

}
/**
* static File[] listRoots() 列出可用的文件系统根。
* 列出的是本机上可以用的盘符
*/

public void fun3()
{
// File file = new File("F:/java/测试文件");
File[] fs = File.listRoots();
for(File s: fs)
{
System.out.println(s);
}
}
/**
* 列出指定文件夹下面的子文件包括子文件夹下面的所有文件
* 采用递归的方式调用,并输出所有文件
*/

public void fun4(File f)
{

System.out.println(f);
if(f.isDirectory())
{
File  [] file = f.listFiles();
for(File  fi: file)
{
fun4(fi);
}
}

}
public void fun5() throws MalformedURLException, URISyntaxException
{
File file = new File("F:\\java\\测试文件\\testss文件夹/test/test");
// mkdir创建文件夹,只能创建一级目录,如果已经创建返回false,
// boolean b = file.mkdir();
// System.out.println("文件是:"+b);
// mkdirs可以跳级创建文件夹
boolean bo = file.mkdirs();
System.out.println(bo);


/*
* boolean renameTo(File dest)  重新命名此抽象路径名表示的文件。 
* */
file.renameTo(new File("F:/java/测试文件/testss文件夹/test/ss"));
URI uri  = file.toURI();
System.out.println(uri);

file = new File (new URI("file:/F:/java/测试文件/tests"));
System.out.println(file);






}
public static void main(String [] args) throws MalformedURLException, URISyntaxException
{
File file = new File ("F:/java/测试文件");
new file1().fun1();
new file1().fun2();
new file1().fun3();
System.out.println("-------------------------------");
new file1().fun4(file);
new file1().fun5();
//main(args);
}
}