Java读取文件的简单实现方法

 更新时间:2014年09月19日 15:07:21   投稿:shichen2014  
这篇文章主要介绍了Java读取文件的简单实现方法,通过一个读取txt格式的log文件为例,详细的讲述了Java读取文件的方法及原理,需要的朋友可以参考下

本文实例讲述了Java读取文件的简单实现方法,非常实用。分享给大家供大家参考之用。具体方法如下:

这是一个简单的读取文件的代码,并试着读取一个log文件,再输出。

主要代码如下:

import java.io.*;
public class FileToString {
   public static String readFile(String fileName) {
    String output = ""; 
    File file = new File(fileName);
    if(file.exists()){
      if(file.isFile()){
        try{
          BufferedReader input = new BufferedReader (new FileReader(file));
          StringBuffer buffer = new StringBuffer();
          String text;
          while((text = input.readLine()) != null)
            buffer.append(text +"/n");
          output = buffer.toString();          
        }
        catch(IOException ioException){
          System.err.println("File Error!");
        }
      }
      else if(file.isDirectory()){
        String[] dir = file.list();
        output += "Directory contents:/n";
        
        for(int i=0; i<dir.length; i++){
          output += dir[i] +"/n";
        }
      }
    }
    else{
      System.err.println("Does not exist!");
    }
    return output;
   }
   public static void main (String args[]){
     String str = readFile("C:/1.txt");
     System.out.print(str);
   }
}

输出结果如下:

奥运加油!

北京加油!

中国加油!


这里FileReader类打开一个文件,但是它并不知道如何读取一个文件,这就需要BufferedReader类提供读取文本行的功能。这就要联合这两个类的功能,来实现打开文件并读取文件的目的。这是一种包装流对象的技术,即将一个流的服务添加到另一个流中。

另外需要指出的是,Java在按照路径打开文件时,"/"和"/"都是认可的,只是在用到"/"时,要用另一个"/"转义一下

希望本文所述对大家Java程序设计的学习有所帮助。

相关文章

  • Java简单计算两个日期月数差的方法

    Java简单计算两个日期月数差的方法

    这篇文章主要介绍了Java简单计算两个日期月数差的方法,结合实例形式分析了java使用Calendar类进行日期时间操作相关技巧,需要的朋友可以参考下
    2017-06-06
  • 浅谈Maven包冲突的原理及解决方法

    浅谈Maven包冲突的原理及解决方法

    这篇文章主要介绍了浅谈Maven包冲突的原理及解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java 线程优先级详解及实例

    Java 线程优先级详解及实例

    这篇文章主要介绍了Java 线程优先级详解及实例的相关资料,需要的朋友可以参考下
    2017-04-04
  • Java中Stream Filter多条件筛选过滤代码举例

    Java中Stream Filter多条件筛选过滤代码举例

    这篇文章主要给大家介绍了关于Java中Stream Filter多条件筛选过滤的相关资料,Java Stream中的filter方法可以使用多个条件来过滤数据,文中给出了详细的代码示例,需要的朋友可以参考下
    2023-12-12
  • 基于Spring实现零重启自由编排任务的定时管理器

    基于Spring实现零重启自由编排任务的定时管理器

    我们发现,我们使用Spring自带的定时任务如果要有修改,那么就要修改代码,然后重启项目,所以本文就带大家实现一个零重启自由编排任务的定时管理器吧
    2023-07-07
  • Java 常见的限流算法详细分析并实现

    Java 常见的限流算法详细分析并实现

    大数据量高并发访问时,经常出现服务或接口面对暴涨的请求而不可用的情况,甚至引发连锁反映导致整个系统崩溃。此时你需要使用的技术手段之一就是限流,当请求达到一定的并发数或速率,就进行等待、排队、降级、拒绝服务等。限流时,常见算法是计数器、漏斗、令牌桶算法
    2022-04-04
  • java8新特性教程之time包使用总结

    java8新特性教程之time包使用总结

    Java8新增了date和time的util包,下面这篇文章主要给大家介绍了关于java8新特性教程之time包使用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 如何在Java中优雅地判空详解

    如何在Java中优雅地判空详解

    这篇文章主要大家介绍了关于如何在Java中优雅地判空的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • SpringBoot学习之基于注解的缓存

    SpringBoot学习之基于注解的缓存

    spring boot对缓存支持非常灵活,我们可以使用默认的EhCache,也可以整合第三方的框架,只需配置即可,下面这篇文章主要给大家介绍了关于SpringBoot学习之基于注解缓存的相关资料,需要的朋友可以参考下
    2022-03-03
  • java中throws与try...catch的区别点

    java中throws与try...catch的区别点

    在本篇文章里小编给大家整理了一篇关于java中throws与try...catch的区别点的内容,需要的朋友们跟着学习下。
    2020-02-02

最新评论