更新时间:2022-10-17 11:03:06 来源:极悦 浏览7810次
在 Java 中,使用预定义的类和包可以轻松创建文件。有三种方法可以创建文件。
使用 File.createNewFile() 方法
使用 FileOutputStream 类
使用 File.createFile() 方法
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 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()+ "\n" ; //str 存储我们输入的字符串
字节[] b= str.getBytes(); //将字符串转换为字节
fos.write(b); //将字节写入文件
fos.close(); //关闭文件
System.out.println( "文件已保存。" );
}
捕获(异常 e)
{
e.printStackTrace();
}
}
}
输出
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();
}
}
}
输出
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习