`

java读写文件

    博客分类:
  • java
阅读更多
/*  
 * 简单的读/写文本文件的示例  
 * 这里包含了三个例子,即  
 * 1. 将文件读入到内存(这里是StringBuffer)的例子  
 * 2. 将内容中的文本写到文件  
 * 3. 将一个文件的内容读出来写入另一个文件中  
 *    同时也展示了如果从输入流中读出来内容写入输出流中(仅限文本流)  
 * 三个例子可以独立存在,所以根据需要只看其中一个就行了。  
 */  
  
import java.io.BufferedReader;   
import java.io.FileInputStream;   
import java.io.FileOutputStream;   
import java.io.IOException;   
import java.io.InputStream;   
import java.io.InputStreamReader;   
import java.io.OutputStream;   
import java.io.OutputStreamWriter;   
import java.io.PrintStream;   
import java.io.PrintWriter;   
  
public final class AccessTextFile {   
  
    /**  
     * 1. 演示将流中的文本读入一个 StringBuffer 中  
     * @throws IOException  
     */  
    public void readToBuffer(StringBuffer buffer, InputStream is)   
        throws IOException {   
        String line;        // 用来保存每行读取的内容   
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));   
        line = reader.readLine();       // 读取第一行   
        while (line != null) {          // 如果 line 为空说明读完了   
            buffer.append(line);        // 将读到的内容添加到 buffer 中   
            buffer.append("\n");        // 添加换行符   
            line = reader.readLine();   // 读取下一行   
        }   
    }   
  
    /**  
     * 2. 演示将 StringBuffer 中的内容读出到流中  
     */  
    public void writeFromBuffer(StringBuffer buffer, OutputStream os) {   
        // 用 PrintStream 可以方便的把内容输出到输出流中   
        // 其对象的用法和 System.out 一样   
        // (System.out 本身就是 PrintStream 对象)   
        PrintStream ps = new PrintStream(os);      
        ps.print(buffer.toString());   
    }   
  
    /**  
     * 3*. 从输入流中拷贝内容到输入流中  
     * @throws IOException  
     */  
    public void copyStream(InputStream is, OutputStream os) throws IOException {   
        // 这个读过过程可以参阅 readToBuffer 中的注释   
        String line;   
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));   
        PrintWriter writer = new PrintWriter(new OutputStreamWriter(os));   
        line = reader.readLine();   
        while (line != null) {   
            writer.println(line);   
            line = reader.readLine();   
        }   
        writer.flush();     // 最后确定要把输出流中的东西都写出去了   
                            // 这里不关闭 writer 是因为 os 是从外面传进来的   
                            // 既然不是从这里打开的,也就不从这里关闭   
                            // 如果关闭的 writer,封装在里面的 os 也就被关了   
    }   
  
    /**  
     * 3. 调用 copyStream(InputStream, OutputStream) 方法拷贝文本文件  
     */  
    public void copyTextFile(String inFilename, String outFilename)   
        throws IOException {   
        // 先根据输入/输出文件生成相应的输入/输出流   
        InputStream is = new FileInputStream(inFilename);   
        OutputStream os = new FileOutputStream(outFilename);   
        copyStream(is, os);     // 用 copyStream 拷贝内容   
        is.close(); // is 是在这里打开的,所以需要关闭   
        os.close(); // os 是在这里打开的,所以需要关闭   
    }   
  
    public static void main(String[] args) throws IOException {   
        int sw = 1;     // 三种测试的选择开关   
        AccessTextFile test = new AccessTextFile();   
           
        switch (sw) {   
        case 1: // 测试读   
        {   
            InputStream is = new FileInputStream("E:\\test.txt");   
            StringBuffer buffer = new StringBuffer();   
            test.readToBuffer(buffer, is);   
            System.out.println(buffer);     // 将读到 buffer 中的内容写出来   
            is.close();   
            break;   
        }   
        case 2: // 测试写   
        {   
            StringBuffer buffer = new StringBuffer("Only a test\n");   
            test.writeFromBuffer(buffer, System.out);   
            break;   
        }   
        case 3: // 测试拷贝   
        {   
            test.copyTextFile("E:\\test.txt", "E:\\r.txt");   
        }   
            break;   
        }   
    }   
  
} 
分享到:
评论

相关推荐

    java读取文件方法大全

    根据给定的文件信息,我们可以总结出一系列关于Java中读取文件的方法,这些方法涵盖了不同层次的数据读取,包括字节、字符以及行级别的读取。以下是对这些知识点的详细阐述: ### Java读取文件方法大全:读取File流...

    java读写文件(txt)

    在Java编程中,读写文件是一项基础且重要的任务,...以上就是关于“Java读写文件(txt)”的知识点,包括文件的读取、内容转换、正则匹配以及文件的写入。希望这些内容能帮助你理解和掌握Java在文件操作上的基本技能。

    java读取文件大全

    java读取文件大全 写入字节流 读取字节流 在实际运用中相当的广泛 大家共享下资料

    java 读取文件 文件读取操作

    Java中`java.io.FileInputStream`类提供了按字节读取文件的功能。这种方法适用于读取二进制文件,例如图像、音频或视频文件。下面的代码示例展示了如何按字节读取文件: ```java FileInputStream in = new ...

    Java 读写文件文本文件的示例

    根据给定的文件信息,我们将深入探讨Java读写文件文本文件的关键知识点,这些知识点主要集中在文件的读取、写入以及流的复制等操作上。 ### Java读取文本文件 在Java中,读取文本文件通常涉及到使用`InputStream`...

    Java读写文件(excel)

    Java读写文件-Excel

    java读写文件避免中文乱码.docx

    Java 提供了多种方式来读取文件,例如使用 `FileInputStream`、`FileReader`、`BufferedReader` 等。但是,使用这些类时,需要指定正确的编码方式,以避免中文乱码。 在给定的代码中,使用了 `InputStreamReader` ...

    Java读取文件的几种方式

    介绍Java直接读取、带缓冲读取、内存映射读取文件,并详细注释。

    java 读取文件方法的总结

    Java 读取文件的方法在Java编程中至关重要,无论是处理文本文件、二进制文件还是其他类型的数据,都需要灵活运用各种读取方式。以下是对Java读取文件的五种方法的详细说明,每种方法都有相应的代码示例: 1. **按...

    java如何读取文件

    在Java编程语言中,读取文件是一项常见的操作,尤其是在处理数据、日志文件或配置信息时。本文将详细解析如何使用Java读取文本文件,基于提供的代码示例,深入探讨其工作原理及最佳实践。 ### Java读取文本文件的...

    Java读写文件API的用法指南,性能分析与对比。

    在Java编程语言中,文件操作是日常开发中的基础任务,涉及到数据的持久化存储和读取。本指南将深入探讨Java中的文件读写API,包括常用的方法、性能分析以及不同方式之间的对比。以下是对相关知识点的详细说明: 1. ...

    java 读取文件乱码

    在Java编程中,遇到“java 读取文件乱码”的问题通常是由于编码格式不匹配导致的。当程序按照一种编码方式打开文件,而文件实际采用的是另一种编码时,就会出现乱码现象。解决这个问题需要理解Java中处理字符编码的...

    最简单易懂的一个java读写文件的操作

    通过`FileReader`和`BufferedReader`读取文件,用`FileWriter`和`BufferedWriter`写入文件,结合`newLine()`方法处理换行,我们可以实现对文件的高效且兼容的操作。这些基础知识是每个Java开发者都需要掌握的,对于...

    Java读取文件方法大全

    Java语言在处理文件I/O操作时提供了多种方法,这些方法可以按照不同的策略读取文件,例如按字节或字符进行。下面将详细讲解Java中读取文件的主要方法,并结合给出的代码片段进行分析。 首先,Java中最基础的文件...

    Java读取文件并对其排序后重新写入文件

    在Java编程中,读取文件、对数据进行排序并重新写入文件是常见的操作,尤其在数据处理和分析场景中。下面将详细讲解这个过程,包括相关知识点和具体实现。 首先,我们需要导入Java的`java.io`包,该包包含了处理...

    JAVA读写文件小实例

    在Java编程语言中,文件的读写操作是日常开发中不可或缺的部分。本实例将深入探讨如何使用Java进行文件的读取和写入操作,这对于处理数据存储、日志记录、配置文件管理等任务至关重要。首先,我们需要理解Java中的几...

    java按行读取大文件并解析入库

    使用`java.nio.FileChannel`类创建一个文件通道,这允许我们以非阻塞的方式读取文件。通过`Files.newByteChannel()`方法可以从`java.nio.file.Paths`中获取文件通道。 ```java FileChannel fileChannel = Files....

    java 读取文件

    本文主要关注如何使用Java来读取文件内容,包括四种常见的读取方式:按字节读取、按字符读取、按行读取以及随机读取。此外,我们还将讨论如何向文件追加内容。 一、按字节读取文件内容 在Java中,`java.io ...

    Java读取文件方法集锦(经典小程序)

    [Java]读取文件方法大全 1、按字节读取文件内容 2、按字符读取文件内容 3、按行读取文件内容 4、随机读取文件内容

Global site tag (gtag.js) - Google Analytics