java file 方法_java中File类中的常用的方法

本文章收藏了大量的关于java中File类中的常用的方法,有需要的朋友可参考一下。

1.创建

boolean createNewFile();在指定路径创建文件,如果文件已经存在,则不创建,返回false.输出流

对象一旦创建,如果文件存在,则会覆盖。

boolean mkdir():创建一级文件夹

boolean mkdirs():创建多级文件夹

调用该类的一个方法createNewFile(),但是在实际操作中需要注意一些事项,如判断文件是否存在,以及如何向新建文件中写入数据等。

 代码如下复制代码

import java.io.*;

public class CreateNewFile{

//创建一个方法完成创建文件的目的,文件的第一个参数是文件路径和文件名,第二个参数是文件内容

//如:myfile.doc  HelloJava!

public void createNewFile(String fileDirectoryAndName,String fileContent){

try{

String fileName = fileDirectoryAndName;

//创建File对象,参数为String类型,表示目录名

File myFile = new File(fileName);

//判断文件是否存在,如果不存在则调用createNewFile()方法创建新目录,否则跳至异常处理代码

if(!myFile.exists())

myFile.createNewFile();

else  //如果不存在则扔出异常

throw new Exception("The new file already exists!");

//下面把数据写入创建的文件,首先新建文件名为参数创建FileWriter对象

FileWriter resultFile = new FileWriter(myFile);

//把该对象包装进PrinterWriter对象

PrintWriter myNewFile = new PrintWriter(resultFile);

//再通过PrinterWriter对象的println()方法把字符串数据写入新建文件

myNewFile.println(fileContent);

resultFile.close();   //关闭文件写入流

}catch(Exception ex){

System.out.println("无法创建新文件!");

ex.printStackTrace();

}

}

public static void main(String[] args){

//创建类的对象并调用该对象的createNewFile()方法,创建新文件并写入数据

CreateNewFile createFile = new CreateNewFile();

createFile.createNewFile(args[0],args[1]);

}

}

执行该程序,在执行代码后直接输入两个参数,第一个参数是文件名,此时需要注明文件类型,这里创建的word文档;第二个参数是文件的内容,该参数是一个字符串数据

2.删除

boolean delete():删除失败返回假。如果文件正在使用,则删除不了返回false

void deleteOnExit():程序退出时删除文件

3.判断

boolean exists():判断文件是否存在

isFile();

isDirectory();

isHidden();

isAbsolute();

4.获取信息

getName();

getPahth();//获取路径

getAbsoluteFile();//获取绝对路径封装成文件对象

getAbsolutPath();//获取绝对路径

getParent();

lastModified();

length();

getParent();//该方法返回的是绝对路径中的父目录,如果获取的是相对路径,返回null.

//如果相对路径中有一级目录,那么该目录就是返回结果

renameto()

 代码如下复制代码

package com.day20.wd;

import java.io.File;

import java.io.IOException;

public class IODemo {

/**

* @param args

* @throws IOException

*/

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

// TODO Auto-generated method stub

}

private static void method_04() {

File f=new File("abc\test.java");

sop(f.getAbsolutePath());

sop(f.getParent());//该方法返回的是绝对路径中的父目录。如果获取的是相对路径,返回null。

//如果相对路径中有上一层目录该目录就是返回结果

sop(f.getAbsoluteFile());

File  f2=new File("c:\test.java");

sop("rename" f.renameTo(f2));

}

private static void method_03() {

File   f= new File("G:\sdd\sssf\ssf");

sop("isabsolute" f.isAbsolute());

sop(f.getAbsolutePath());

sop(f.mkdir());

sop(f.exists());

}

private static void method_02() throws IOException {

File  f=new File("a.txt");

f.deleteOnExit();//程序退出删除文件

if(f.exists()) //判断文件是否存在

f.delete();//删除

sop(f.getAbsoluteFile());//绝对路径

sop(f.createNewFile());//创建文件,返回boolean值,如true,创建,如果已存在,那么返回false

sop(f.createNewFile());

}

public static void method__01(){

//将a.txt封装成File对象,可以将已有的和未出现的文件或者文件夹封装成对象

File  f=new File("a.txt");

sop(f.getAbsoluteFile());

File  f1=new File("d:\abc","a.txt");

sop(f1.getAbsoluteFile());

File f2=new File("d:\abc");

File f3=new File(f2,"a.txt");

sop(f3);

//separator目录分割符,可以实现跨平台

}

public static void sop(Object e){

System.out.println(e);

}

}

相关文件操作

在java中File类是唯一可以直接操作文件的类:

一、创建文件

 代码如下复制代码

FileDemo01.java:

import java.io.File;

import java.io.IOException;

public class FileDemo01

{

public static void main(String args[])

{

File f = new File("e:" File.separator "abc.txt");//声明File类的对象

try

{

f.createNewFile();//根据给定的路径创建文件

}

catch (IOException e)//进行异常的捕获打印输出

{

e.printStackTrace();

}

}

}

2.删除文件:

 代码如下复制代码

FileDemo02.java

import java.io.File;

public class FileDemo02

{

public static void main(String args[])

{

File f = new File("e:" File.separator "abc.txt");

f.delete();//删除文件

}

}

3.如果文件存在则删除,如果不存在则创建

 代码如下复制代码

FileDemo03.java:

import java.io.File;

import java.io.IOException;

public class FileDemo03

{

public static void main(String args[])

{

File f = new File("e:" File.separator "abc.txt");

/*

如果文件存在则删除文件,如果不存在则创建文件

*/

if(f.exists())

{

f.delete();//删除文件

}

else

{

try

{

f.createNewFile();//创建文件

}

catch (IOException e)

{

e.printStackTrace();

}

}

}

}

4.创建文件夹

 代码如下复制代码

FileDemo04.java:

import java.io.File;

public class FileDemo04

{

public static void main(String args[])

{

File f = new File("e:" File.separator "nwpu");

f.mkdir();

}

}

5.列出文件(列出的只是文件名)

 代码如下复制代码

FileDemo05.java:

import java.io.File;

public class FileDemo05

{

public static void main(String args[])

{

File f = new File("e:" File.separator);//实例化File类的对象

String str [] = f.list();//列出文件,返回一个str数组

for (int i=0;i

{

System.out.println(str[i]);

}

}

}

6.列出文件(listFiles()方法可以列出文件的路径)

 代码如下复制代码

FileDemo06.java:

import java.io.File;

public class FileDemo06

{

public static void main(String args[])

{

File f = new File("e:" File.separator);//实例化File类的对象

File files[] = f.listFiles();//列出文件

for (int i=0;i

{

System.out.println(files[i]);//调用toString 方法打印输出看看输出信息

}

}

}

7.判断是否为目录:(isDirectory()方法)

 代码如下复制代码

FileDemo07.java:

import java.io.File;

public class FileDemo07

{

public static void main(String args[])

{

File f = new File("e:" File.separator);//实例化File类的对象

if(f.isDirectory())

{

System.out.println(f.getPath() "是目录!");

}

else

{

System.out.println(f.getPath() "不是目录!");

}

}

}

8.列出给定目录中的所以内容(如果有子目录则列出子目录中的所以内容)

 代码如下复制代码

FileDemo08.java:

import java.io.File;

public class FileDemo08

{

public static void main(String args[])

{

File f = new File("e:" File.separator);//实例化File类的对象

printFile(f);

}

public static void printFile(File f)

{

if(f!=null)//判断文件是否为空

{

if(f.isDirectory())//判断文件是否为文件夹

{

File files[] = f.listFiles();//列出文件

if(files!=null)

{//判断此目录能否列出

for(int i=0;i

{

printFile(files[i]);//递归调用判断是否为子文件夹

}

}

}

else

{

System.out.println(f);

}

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值