首页 课程 师资 教程 报名

一文看懂如何在Java中创建文件

  • 2022-10-17 11:03:06
  • 8085次 动力节点

在 Java 中,使用预定义的类和包可以轻松创建文件。有三种方法可以创建文件。

使用 File.createNewFile() 方法

使用 FileOutputStream 类

使用 File.createFile() 方法

Java File.createNewFile() 方法

File.createNewFile()是属于java.io包的 File 类的一个方法。它不接受任何论据。该方法会自动创建一个新的空文件。该方法返回一个布尔值:

如果文件创建成功,则为 true。

false,如果文件已经存在。

当我们初始化 File 类对象时,我们提供文件名,然后我们可以调用 File 类的 createNewFile() 方法在 Java 中创建一个新文件。

如果发生 I/O 错误,File.createNewFile() 方法将抛出 java.io.IOException。如果安全管理器存在并且其 SecurityManager.checkWriter(java.lang.String) 方法拒绝对文件的写访问,它也会抛出 SecurityException。该方法的签名是:

公共布尔 createNewFile() 抛出 IOException   

我们可以将文件名或绝对路径或相对路径作为参数传递给 File 类对象。对于非绝对路径,File 对象尝试在当前目录中定位文件。

例子

以下示例创建一个新的空文本文件。第一次运行成功创建了 music.txt,而第二次运行失败。我们可以通过仅更改文件扩展名来创建任何类型的文件。

导入 java.io.File;  
导入 java.io.IOException;  
公共类 CreateFileExample1    
{  
公共静态无效 主要(字符串 [] 参数)     
{     
文件 file =  new  File( "C:\demo\music.txt" ); //初始化文件对象并将路径作为参数传递  
布尔 结果;  
尝试   
{  
结果 = file.createNewFile();  //创建一个新文件  
if (result)       // 测试是否成功创建了一个新文件  
{  
System.out.println( "文件创建" +file.getCanonicalPath()); //返回路径字符串  
}  
别的  
{  
System.out.println( "文件已经存在于位置:" +file.getCanonicalPath());  
}  
}   
捕获 (IOException e)   
{  
e.printStackTrace();    //如果有异常打印  
}         
}  
}  

输出

当文件不存在时。

当文件已经存在时。

Java 文件输出流

文件输出流将数据写入文件。Java FileOutputStream 类也提供对文件的支持。它属于 java.io 包。它将数据存储为字节。当我们需要将一些数据写入创建的文件时,我们使用 FileOutputStream 类。FileOutputStream 类提供了一个构造函数来创建文件。构造函数的签名是:

公共 FileOutputStream(字符串名称, 布尔 附加) 抛出 FileNotFoundException  

参数

name:是文件名

append:如果为真,字节将被写入文件的末尾,而不是开头。

例子

在以下示例中,我们使用 FileOutputStream 创建了一个文件。

导入 java.io.FileOutputStream;  
导入 java.util.Scanner;  
公共类 CreateFileExample   
{  
公共静态无效 主(字符串参数 [])    
{  
尝试  
{  
扫描仪 sc=新的 扫描仪(System.in);         //Scanner 类的对象  
System.out.print( "请输入文件名:" );  
字符串名称=sc.nextLine();              //存放文件名的变量名  
FileOutputStream fos= new  FileOutputStream(name,  true );  // true 附加模式  
System.out.print( "输入文件内容:" );         
字符串 str=sc.nextLine()+ "
" ;      //str 存储我们输入的字符串  
字节[] b= str.getBytes();       //将字符串转换为字节  
fos.write(b);           //将字节写入文件  
fos.close();            //关闭文件  
System.out.println( "文件已保存。" );  
}  
捕获(异常 e)  
{  
e.printStackTrace();          
}  
}  
}  

输出

Java File.createFile() 方法

File.createFile() 是属于java.nio.file包的 File 类的一个方法。它还提供对文件的支持。nio 包是面向缓冲区的。createFile() 方法也用于创建一个新的空文件。使用此方法时,我们不需要关闭资源。这是一个优势。该方法的签名是:

公共静态 路径 createFile(Path, Attribute) 抛出 IOException   

路径:文件的路径。

属性:文件属性的可选列表。

该方法返回文件。

以下示例还创建了一个新的空文件。我们使用 Paths 类 (java.nio.file.Paths) 中名为 Paths.get() 的静态方法创建一个 Path 实例。请注意以下声明:

路径 path = Paths.get("C:\demo\javaprogram.txt");

在上面的行中,Path 是一个接口,Paths 是一个类。两者属于同一个包。Paths.get() 方法创建路径实例。

导入 java.io.IOException;  
导入 java.nio.file.*;  
公共类 CreateFileExample3   
{  
公共静态无效 主要(字符串 [] 参数)     
{  
路径路径 = Paths.get( "C:\demo\javaprogram.txt" ); //创建路径实例  
尝试   
{  
路径 p= Files.createFile(path);     //在指定位置创建文件  
System.out.println( "路径创建的文件:" +p);  
}   
捕获 (IOException e)   
{  
e.printStackTrace();  
}  
}  
}  

输出

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交