Java 文件操作

文件处理简介

文件处理是任何应用程序的重要部分。Java 提供了许多用于创建、读取、更新和删除文件的方法。

Java 文件处理

Java 中的文件处理主要通过 java.io 包中的 File 类完成。该类允许我们处理文件,包括创建、读取、写入和删除文件。

创建 File 对象

要使用 File 类,我们首先需要创建该类的对象,然后指定文件名或目录名。

import java.io.File;

File myObj = new File("filename.txt");

File 类的常用方法

File 类提供了许多有用的方法,用于创建和获取有关文件的信息,例如:

  • canRead(): 测试文件是否可读
  • canWrite(): 测试文件是否可写
  • createNewFile(): 创建一个空文件
  • delete(): 删除文件
  • exists(): 测试文件是否存在
  • getName(): 返回文件的名称
  • getAbsolutePath(): 返回文件的绝对路径名
  • length(): 返回文件的大小(字节为单位)
  • list(): 返回目录中文件的数组
  • mkdir(): 创建一个目录

读取文件

可以使用多种方法读取文件,例如 ScannerBufferedReaderFileInputStream 等。

使用 Scanner 类读取文件内容

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner; public class ReadFile {
public static void main(String[] args) {
try {
File myObj = new File("filename.txt");
Scanner myReader = new Scanner(myObj);
while (myReader.hasNextLine()) {
String data = myReader.nextLine();
System.out.println(data);
}
myReader.close();
} catch (FileNotFoundException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}

写入文件

同样,可以使用多种方法将数据写入文件,例如 PrintWriterBufferedWriterFileOutputStream 等。

使用 PrintWriter 类写入文件内容

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter; public class WriteToFile {
public static void main(String[] args) {
try {
PrintWriter myWriter = new PrintWriter("filename.txt");
myWriter.write("Handling files in Java can be a bit tricky, but fun enough!");
myWriter.close();
System.out.println("Successfully wrote to the file.");
} catch (FileNotFoundException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}

删除文件

要删除文件,可以使用 delete() 方法。

示例

import java.io.File;

public class DeleteFile {
public static void main(String[] args) {
File myObj = new File("filename.txt");
if (myObj.delete()) {
System.out.println("Deleted the file: " + myObj.getName());
} else {
System.out.println("Failed to delete the file.");
}
}
}

删除文件夹示例

import java.io.File;

public class DeleteFolder {
public static void main(String[] args) {
File myObj = new File("C:\\Users\\MyName\\Test");
if (myObj.delete()) {
System.out.println("Deleted the folder: " + myObj.getName());
} else {
System.out.println("Failed to delete the folder.");
}
}
}

删除多个文件或文件夹示例

import java.io.File;

public class DeleteMultipleFiles {
public static void main(String[] args) {
File dir = new File("C:\\Users\\MyName\\Test");
File[] files = dir.listFiles();
for (File file : files) {
if (file.delete()) {
System.out.println("Deleted: " + file.getName());
} else {
System.out.println("Failed to delete: " + file.getName());
}
}
}
}

以上示例提供了一些基本的文件操作方法,但在实际应用中,您可能需要更复杂的逻辑和错误处理。确保处理文件操作时考虑到可能发生的异常,以提高程序的健壮性。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

Java 文件处理完全指南:创建、读取、写入和删除文件详细解析的更多相关文章

  1. IOS在Document目录下创建文件夹、保存、读取、以及删除文件

    // 在Documents目录下创建一个名为LaunchImage的文件夹 NSString *path = [[NSHomeDirectory() stringByAppendingPathComp ...

  2. Hadoop权威指南:HDFS-目录,查询文件系统,删除文件

    Hadoop权威指南:HDFS-目录,查询文件系统,删除文件 [TOC] 目录 FileSystem实例提供了创建目录的方法 public boolean mkdirs(Path f) throws ...

  3. linux文件权限总结(创建root不可以删除文件、只可追加的日志文件等)

    文件类型 对于文件和目录的访问权力是根据读访问,写访问,和执行访问来定义的. 我们来看一下 ls 命令的输出结果 [root@iZ28dr6w0qvZ test]# ls -l 总用量 72 -rw- ...

  4. api进阶Day2(低级流)文件流的输出流、读取流。向文件中写入文本数据、读取文件中的字符串、用lambda表达式创建文件过滤器。

    文件流:输出流: package io; import java.io.FileNotFoundException; import java.io.FileOutputStream; import j ...

  5. 【java开发系列】— JDOM创建、改动、删除、读取XML文件

    有非常多中操作XML文件的方法,这里介绍一下JDOM的用法和技巧. JDOM下载地址 创建XML文档 XML文件是一种典型的树形文件,每一个文档元素都是一个document元素的子节点. 而每一个子元 ...

  6. 【java开发系列】—— JDOM创建、修改、删除、读取XML文件

    有很多中操作XML文件的方法,这里介绍一下JDOM的使用方法和技巧. JDOM下载地址 创建XML文档 XML文件是一种典型的树形文件,每个文档元素都是一个document元素的子节点.而每个子元素都 ...

  7. nio实现文件读取写入数据库或文件

    1.nio实现读取大文件,之后分批读取写入数据库 2.nio实现读取大文件,之后分批写入指定文件 package com.ally; import java.io.File; import java. ...

  8. bat实现创建、复制、删除文件及文件夹

    1 建bat文件自动执行复制,删除命令. 例1:以下是复制cd.dll文件至windows\system32的bat文件内容: copy cd.dll %windir%\system32 例2:下面一 ...

  9. 批处理bat实现创建、复制、删除文件及文件夹

    转自:http://blog.csdn.net/linda1000/article/details/10221285 1 建bat文件自动执行复制,删除命令. 例1:以下是复制cd.dll文件至win ...

  10. [Xcode 实际操作]七、文件与数据-(5 )复制、移动、删除文件和删除文件夹

    目录:[Swift]Xcode实际操作 本文将演示如何复制.移动和删除文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class ...

随机推荐

  1. python模块Configparser读取 ini(cfg,txt)等配置文件

    一个ini文件的组成: 一个ini文件是由多个section组成,每个section中以key=vlaue形式存储数据: 示例 # 安装 pip install ConfigParser # 1.导包 ...

  2. 【Azure APIM】APIM Self-Hosted网关中,添加网关日志以记录请求头信息(Request Header / Response Header)

    问题描述 在APIM Gateway 日志中, 对于发送到APIM Host的请求,只记录了一些常规的URL, Status, Time, IP等信息.关于请求Header, Body中的信息,因为隐 ...

  3. Spring Cloud跟Dubbo区别?

    Spring Cloud是一个微服务框架,提供了微服务中很多功能组件,Dubbo一开始时RPC调用框架,核心是解决服务调用间的问题, Spring Cloud是一个大而全的框架,Dubbo更侧重于服务 ...

  4. aardio 嵌入 其他应用程序

    aardio 嵌入 其他应用程序 需求 这个chrome壳不能进行拖拽和缩放,所以再套一个壳,可以再分屏的时候用 import win.ui; /*DSG{{*/ winform = win.form ...

  5. config.js 多人同步更新 解决方案 多项目公用一套config.js dev

    index.html <script type='text/javascript' src='<%= BASE_URL %>config.js?${Math.random().toS ...

  6. vscode 自动格式化md文件,搞得很是郁闷,加入 [markdown] 自定义配置 "editor.formatOnSave": false 搞定了。

    上下文: vscode做vue的项目开发,需要对代码进行格式化,用的vetur插件 正常来讲,代码保存的时候,需要进行格式化,所以配置文件会写成 "editor.formatOnSave&q ...

  7. TornadoFx的EventBus使用

    原文地址:TornadoFx中的EventBus使用 | Stars-One的杂货小窝 这里默认各位都清楚EventBus的具体作用,稍微有点短,主要国家没有啥好补充的吧 1.定义事件 //接收事件首 ...

  8. leetcode算法之Valid Anagram

    原文算法说明如下: Given two strings s and t, write a function to determine if t is an anagram of s. For exam ...

  9. python学习笔记(2): 函数式编程

    函数式编程 高阶函数 map() map接受一个函数和一个可迭代对象(Iterable),返回一个map对象(Iterator) def f(x): return x*x list(map(f, [1 ...

  10. Pandas:如何让你的代码性能飙升

    在数据分析相关的工作中,Pandas无疑是一个强大的工具,它的易用性和灵活性广受青睐.然而,随着数据量的不断增长和计算需求的日益复杂,Pandas代码的性能问题也逐渐浮出水面.如何让Pandas代码运 ...