Java编程语言中,想对文件进行操作,必须先对其封装的流操作类型有一定的了解。
对于计算机中的文件和目录,Java封装了一个File类。此类中定义了一些对文件及目录操作的常用方法
如果想不使用流方式操作文件,需要用到Java中定义的RandomAccessFile类。此类中定义了许多读写方法用于操作文件,如readInt, readLong, readShort, readDouble, readFloat, readBoolean, readChar, readLine;writeInt, writeLong, writeShort, writeDouble, writeFloat, writeBoolean writeChar, writeLine等。并可以使用seek方法移动指针,从文件任意位置进行读写操作。
对于文件的流操作,Java则提供了相对比较丰富的类。
InputStream,所有输入流类的祖先类,其子类有FileInputStream和FilterInputStream,而FilterInputStream下又有子类DataInputStream和BufferedInputStream.
OutStream,所有输出流类的祖先类,其子类有FileOutputStream和FilterOutputStream,而FilterOutputStream下又有子类DataOutputStream和BufferedOutputStream.
FileXXXXStream是以二进制方式对文件数据进行读写操作,使用read或write方法每次读取或写入一个或多个字节;
DataXXXXStream是对FileXXXXStream的一个装饰类,可以使用readInt(writeInt), readChar(writeChar), readBoolean(writeBoolean)等方法直接读取或写入数字、字符、布尔等类型数据;
BufferedXXXXStream亦是对FileXXXXStream的一个装饰类,其作用为可以使用缓冲区对流数据进行读取和写入操作。如果将FileXXXXStream类对数据的读取或写入比做是一瓢一瓢的将水接入大水桶,那么BufferedXXXXStream则是先将水接到一个小水桶中,然后再倒入存水的大水桶中。
下面举例说明这些类的使用方法。
public static void getFileInfo(String fileName) throws IOException { File f = new File(fileName); System.out.println("File Information [" + fileName + "]"); System.out.println("Executable: " + f.canExecute()); System.out.println("Writeable: " + f.canWrite()); System.out.println("Readable: " + f.canRead()); System.out.println("Path: " + f.getPath()); System.out.println("Absolute Paht: " + f.getAbsolutePath()); System.out.println("Canonical Path: " + f.getCanonicalPath()); System.out.println("Parten: " + f.getParent()); System.out.println("Last modified: " + f.lastModified()); System.out.println("Path: " + f.toPath()); System.out.println("URI: " + f.toURI()); System.out.println("======================================="); } //读取文本文件内容 public static void readFile(String fileName) throws IOException { //FileInputStream in = new FileInputStream(fileName); FileReader fr = new FileReader(fileName); int b; while ((b = fr.read()) != -1) { System.out.print((char)b); } fr.close(); }
public void copyFile(File srcFile, File destFile) { if (!srcFile.exists()) { //源文件不存在 throw new Exception("源文件" + srcFile + "不存在"); } if (!srcFile.isFile()) { //源文件不是文件,可是是目录或其他 throw new Exception("源文件" + srcFile + "不是文件"); } FileInputStream in = new FileInputStream(srcFile); FileOutputStream out = new FileOutputStream(destFile); InputStreamReader isr = new InputStreamReader(in); int b = 0; byte[] buf = new byte[8 * 1024]; while ((b = irs.read(buf, 0, buf.length)) != -1) { out.write(buf, 0, b); } in.close(); out.close(); }
版权声明:本文为博主原创文章,未经博主允许不得转载。
相关推荐
Java文件操作是编程中不可或缺的一部分,尤其是在处理I/O流、文件读写以及文件管理时。Apache Commons IO是一个非常实用的库,它为Java开发者提供了大量的工具类和方法,以简化文件操作。在这个场景中,我们关注的是...
### Java流(文件读写操作) #### 一、流的分类 Java中处理文件和数据时,使用流的概念来进行...通过这些基本的示例,开发者可以更好地理解Java流的工作原理,并能够根据具体需求选择合适的流类型进行文件读写操作。
Java文件与流操作是Java编程中的重要组成部分,主要用于数据的读写、传输和处理。在Java中,I/O(输入/输出)系统是通过流(Stream)的概念来设计的,流是数据传输的抽象表示,可以是文件、网络连接、内存缓冲区等。...
Java 文件操作与IO流是Java编程中的核心概念,主要用于数据的读取、写入和传输。在Java中,文件操作通常涉及到`java.io`包下的类,如`File`、`FileOutputStream`、`OutputStreamWriter`和`BufferedWriter`等。下面将...
Java文件操作是Java编程中必不可少的部分,它涵盖了...以上就是Java文件操作的核心知识点,涵盖了文件和目录的基本操作、流的使用、NIO特性、异常处理等多个方面。通过这些,开发者可以灵活地处理各种文件操作任务。
#### 3.2 文件操作示例 - **获取文件名称**:`getOriginalFilename()`方法可以获取原始文件名。 - **转换文件类型**:通过类型转换,可以进一步操作文件,如将其转换为`CommonsMultipartFile`或`DiskFileItem`等...
本篇文章将深入探讨Java中的文件操作,特别是基于IO流的读取方法。 首先,我们来看如何使用Java进行文件读取。文件读取通常涉及以下几种方式: 1. **按字节读取文件内容**:这是最基础的读取方式,适用于处理二...
Java流提供了全面的文件操作能力,从基本的读写到复杂的过滤和转换。结合`File`类,开发者可以实现文件的增、删、改、查、复制等各种功能,适应各种文件处理需求。理解并熟练掌握Java流操作文件,是Java开发中的重要...
在Java编程中,文件流操作是处理文件输入和输出的核心技术。文件流允许程序以高效且灵活的方式读写文件内容,无论是文本文件还是二进制文件。本篇文章将详细阐述Java中的文件流操作,包括字节流和字符流的使用。 ...
在Java编程语言中,文件复制是一项常见...理解这些基本概念对于进行更复杂的文件操作至关重要。在实际开发中,还可以考虑使用NIO(New IO)或Java 7引入的`Files.copy()` 方法,它们提供了更高效和简洁的文件操作方式。
在Java编程语言中,文件操作是一项基础且重要的任务。这篇博文主要探讨了如何使用Java进行常见的文件操作,包括创建、读取、写入、删除文件以及处理目录等。以下是对这些知识点的详细说明: 1. **创建文件**: 在...
总的来说,Java的流和文件操作是一个广泛且基础的主题,涵盖了从简单的文件复制到复杂的数据序列化。学习这些概念不仅有助于理解Java I/O系统的工作原理,也是开发高效、可靠应用程序的基础。在实际编程中,开发者...
总的来说,Java文件流操作涵盖了字节流、字符流以及缓冲流的使用,这些都是Java I/O系统的基础,也是任何Java程序员必备的知识点。理解并熟练运用这些概念,可以有效地处理文件输入输出,实现数据的读写操作。
在Java编程语言中,文件操作是一项基础且重要的任务。这个名为"JAVA 文件常用流操作.zip"的压缩包可能包含了各种关于Java中文件流使用的示例和教程。让我们深入探讨一下Java中的文件流操作。 首先,Java中的文件...
总的来说,理解和熟练使用Java的文件操作类是任何Java开发者必备的技能之一。无论是处理文本文件还是二进制文件,无论是简单的读写还是复杂的流操作,这些类都能提供强大的支持。记住,始终确保在操作完成后正确关闭...
以上就是Java文件操作的核心知识点。在实际开发中,根据具体需求,可以灵活运用这些方法和类,实现对文件和目录的高效管理。同时,理解并掌握源码能够帮助我们更好地解决问题,而利用工具类能提高开发效率。
1. **文件操作基础** Java提供了一系列类来处理文件操作,如`java.io.File`用于创建、读取、写入、删除文件或目录,以及获取文件属性。首先,我们需要创建一个File对象,代表通讯录文件的位置。 2. **序列化与反...
### Java中文件操作详解 #### 一、获取控制台用户输入信息 在Java中,获取控制台用户输入信息是一项基本但重要的操作。如标题“Java中文件操作大全”所示,其中一个示例方法`getInputMessage()`用于从控制台读取...
在Java 7中,文件操作得到了显著的改进,引入了`java.nio.file`包,其中最重要的新特性之一就是Path类的出现。Path类是Java 7文件系统接口(FileSystem API)的核心部分,它提供了一种抽象的方式来表示文件或目录的...