`
小懒蛋
  • 浏览: 31140 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

文本文件读取 -- 消除样板式代码工具类

    博客分类:
  • java
阅读更多

 

本人才疏学浅,但转载注明出处:

 http://waitingkkk-163-com.iteye.com/admin/blogs/2233450

 

 这个工具类是我自己写的,在日常工作中经常用到,尤其是我经常需要写一些读取文件的工具方法,比如文件对比,读入文件中的字段名生成sql脚本等。

package io;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;

/**
 * Created by vincent on 2015/8/6.
 */
public class FileUtil {
    public static void readString(File targetFile, LineHandler lineHandler) throws Exception {
        BufferedReader reader = new BufferedReader(new FileReader(targetFile));
        try{
            int lineNum = 1;
            String lineContent = null;
            while((lineContent = reader.readLine()) != null){
                lineHandler.handle(lineNum, lineContent);
                lineNum ++;
            }
        } finally {
            if(reader != null)
                reader.close();
        }
    }
    interface LineHandler{
        void handle(int lineNum, String lineContent);
    }
}

 调用方法:

package io;

import java.io.File;

/**
 * Created by vincent on 2015/8/6.
 */
public class Client {
    public static void main(String args[]) throws Exception {
        File temp = new File("g:/temp/temp.txt");
        FileUtil.readString(temp, new FileUtil.LineHandler() {
            @Override
            public void handle(int lineNum, String lineContent) {
                System.out.println(lineNum + " -> " + lineContent);
            }
        });
    }
}

 开流关流等又繁琐又容易遗漏的地方被抽象到工具方法中,调用者只需关心读到的每一行文本的内容处理,也是文本读取的核心业务。

 

 

 

分享到:
评论

相关推荐

    WIS文件转换为文本文件的C--源代码_wis_wis转txt的c源代码_

    提供的PDF文件“WIS文件转换为文本文件的C--源代码.pdf”应该包含了具体的实现细节,包括上述各个步骤的代码示例。通过学习和理解这份源代码,开发者可以掌握如何处理类似的数据转换任务,这对于从事地质数据分析...

    基于java的开发源码-读写文本文件的示例代码.zip

    基于java的开发源码-读写文本文件的示例代码.zip 基于java的开发源码-读写文本文件的示例代码.zip 基于java的开发源码-读写文本文件的示例代码.zip 基于java的开发源码-读写文本文件的示例代码.zip 基于java的开发...

    Java读写Yaml文件的工具类-snakeyaml

    java通过snakeyaml类能非常方便的操作,读写yaml文件。

    VISIO(2003)文本替换工具 - exe & VB6源代码

    【标题】"VISIO(2003)文本替换工具 - exe & VB6源代码" 涉及到的核心知识点是Microsoft Visio 2003的文本替换功能以及使用VB6(Visual Basic 6)编写的应用程序。Visio是一款强大的图形设计和绘图软件,常用于创建...

    dbf-jdbc-wisecoders,JAVA 读写DBF文件工具包

    2. **读取支持**:工具包能够读取DBF文件中的所有记录,包括字段名、字段类型、字段长度等元数据,以及实际的记录数据。开发者可以通过执行SELECT语句获取所需的数据。 3. **写入支持**:除了读取,`dbf-jdbc-...

    C#文本文件读取和写入(文件、目录操作)

    例如,`File`类提供了静态方法用于读写文件,而`StreamReader`和`StreamWriter`则用于流式读写。 1. **读取文本文件**: 使用`File.ReadAllText()`或`File.ReadAllLines()`可以方便地一次性读取整个文件内容。`...

    JAVA简单的读写文本文件的代码

    JAVA简单的读写文本文件的代码JAVA简单的读写文本文件的代码

    C++文件操作工具类

    因此,一个良好的文件操作工具类通常会封装这些细节,提供更友好的API,例如提供一次性读取整个文件到字符串或向文件写入字符串的功能,或者提供异步读写、错误处理等功能。 这个“C++文件操作工具类”可能包含以下...

    一次代码重构之旅-快速读写xml文件工具类封装

    在描述中提到的博客文章“一次代码重构之旅-快速读写xml文件工具类封装”,作者分享了如何通过Java进行XML操作的优化,将原始的XML处理代码整合到一个工具类中,提供简洁易用的API。在阅读该博客文章的过程中,我们...

    基于Java的源码-读写文本文件的示例代码.zip

    这个"基于Java的源码-读写文本文件的示例代码.zip"压缩包很可能包含了若干个用于演示如何在Java中执行这些操作的源代码文件。下面将详细解释如何使用Java进行文本文件的读写操作。 1. **打开文件**: 在Java中,...

    VBNET逐行读写文本文件

    在VB.NET编程环境中,处理文本文件是常见的任务之一,无论是读取数据、写入日志还是进行数据分析。本文将深入探讨如何使用VB.NET中的`FileOpen()`函数来实现文本文件的逐行读取和写入操作,同时关注如何避免写入的...

    基于Java的实例源码-读写文本文件的示例代码.zip

    这个"基于Java的实例源码-读写文本文件的示例代码.zip"压缩包很可能是包含了几个演示如何在Java中执行这些操作的源代码文件。下面将详细解释Java中读写文本文件的基础知识。 1. **Java I/O流**: Java的I/O(Input...

    一个文本转UTF-8的简单工具

    标题中的“一个文本转UTF-8的简单工具”指的是一个专为文本文件设计的小型应用程序,它的主要功能是将文本文件的编码格式转换为UTF-8。UTF-8是一种广泛使用的字符编码标准,能支持世界上几乎所有的语言文字,包括...

    Delphi直接读写文本文件

    在Delphi编程环境中,直接读写文本文件是常见的任务,特别是在处理日志、配置文件或数据存储时。本文将深入探讨如何在不依赖Memo控件的情况下实现这一功能,以提高程序的效率和灵活性。 首先,我们需要引入`System....

    Java实现的文件读取工具类

    在这个"Java实现的文件读取工具类"中,我们可以预期它包含了一些核心的文件I/O功能以及日期和字符串之间的转换方法。下面我们将详细探讨这些知识点。 1. **文件读取与写入**: - `FileInputStream`:用于读取二...

    linux文本转换程序-源代码

    总之,"Linux文本转换程序"是一个旨在解决文本文件在Linux和Windows之间交换时遇到的兼容性问题的实用工具。通过理解和学习这个源代码,开发者不仅可以了解文件转换的基本原理,还能加深对C++编程、Windows应用程序...

    不同类型文件读取工具类

    以上介绍的只是部分文件读取工具类,实际开发中还有许多其他库和工具可供选择,开发者应根据具体需求选择合适的工具,确保代码的效率和可维护性。在阅读源码时,理解这些工具类的工作原理和内部实现,对于提升编程...

    读取properties文件工具类

    这个工具类可能会使用`java.util.Properties`类和`java.io.FileInputStream`或`java.io.FileOutputStream`来读写文件。 3. **使用工具类读取.properties文件** 使用工具类读取`.properties`文件的步骤如下: 1. ...

    文本比对工具-配合CodeMirror使用

    文本比对js-配合 CodeMirror.MergeView方法使用

    配置文本文件读取封装

    本话题主要关注如何封装一个工具类,以便于批量处理这些文本配置文件,特别是那些以逗号分隔值(CSV)格式的数据。 1. **配置文件**:配置文件是程序与用户交互的一种方式,存储了运行时的参数和设定。它们可以是...

Global site tag (gtag.js) - Google Analytics