java读取txt文件并输出结果

这篇文章主要介绍了java读取txt文件并输出结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

描述:

1.java读取指定txt文件并解析

文件格式:

代码:

package com.thinkgem.wlw.modules.midea;

import java.io.*;
import java.util.ArrayList;
import java.util.List;

/**
 * @Author: zhouhe
 * @Date: 2019/6/19 8:48
 */
public class Test {
  public static void main(String[] args) {
    // 文件夹路径
    String path = "D:\\input.txt";
    try {
      List<String> scanListPath = readFile02(path);
//      System.out.println(scanListPath);
      for (int i = 0; i < scanListPath.size(); i++) {
        String mytext = scanListPath.get(i);

        //替换所有制表符
        mytext = mytext.replaceAll("\t",",");
        System.out.println(mytext);
        //每一行都转化为新的数组,根据下标去判断参数值对应的参数是什么
        String [] strArr= mytext.split(","); //注意分隔符是需要转译
        for (int m = 0; m < strArr.length; m++) {
//          System.out.println(strArr[m]);
          switch(m){
            case 0:
              System.out.println("时间:"+strArr[m]);
              break;
            case 1:
              System.out.println("甲烷:"+strArr[m]);
              break;
            case 2:
              System.out.println("总烃:"+strArr[m]);
              break;
            case 3:
              System.out.println("非甲烷总烃:"+strArr[m]);
              break;
            case 4:
              System.out.println("氨气:"+strArr[m]);
              break;
            case 5:
              System.out.println("硫化氢:"+strArr[m]);
              break;
            case 6:
              System.out.println("氧气:"+strArr[m]);
              break;
            default:
              break;
          }
        }
      }
    } catch (IOException e) {
      System.out.println("有异常,无法读取!!!");
    }
  }

  /**
   * 读取一个文本 一行一行读取
   *
   * @param path
   * @return
   * @throws IOException
   */
  public static List<String> readFile02(String path) throws IOException {
    // 使用一个字符串集合来存储文本中的路径 ,也可用String []数组
    List<String> list = new ArrayList<String>();
    FileInputStream fis = new FileInputStream(path);
    // 防止路径乱码  如果utf-8 乱码 改GBK   eclipse里创建的txt 用UTF-8,在电脑上自己创建的txt 用GBK
    InputStreamReader isr = new InputStreamReader(fis, "UTF-8");
    BufferedReader br = new BufferedReader(isr);
    String line = "";
    while ((line = br.readLine()) != null) {
      // 如果 t x t文件里的路径 不包含---字符串    这里是对里面的内容进行一个筛选
      if (line.lastIndexOf("---") < 0) {
        list.add(line);
      }
    }
    br.close();
    isr.close();
    fis.close();
    return list;
  }
}

结果:

2.java读取指定文件夹下的所有txt文件并输出内容(我这里一个文件夹下面有 2 个txt文件):

代码:

package com.thinkgem.wlw.modules.midea;

import java.io.*;

/**
 * @Author zhouhe
 * @Date 2019/10/10 13:10
 */
public class Test2 {

  /**新建一个类把下面代码放进去,注意要设置basePath(你要读取的文件夹),读取和写入的方法也都写好了.你可以根据自己的需求掉用就行了**/
  static String basePath="D:\\测试";
  /**
   * 查找文件夹下所有符合csv的文件
   *
   * @param dir 要查找的文件夹对象
   * */
  public static void findFile(File dir) throws IOException {
    File[] dirFiles = dir.listFiles();
    for(File temp : dirFiles){
      if(!temp.isFile()){
        findFile(temp);
      }
    //查找指定的文件
    if(temp.isFile() && temp.getAbsolutePath().endsWith(".txt") ){
        //获取文件路径,包含文件名
        String filePath = temp.getAbsolutePath();
        //获取文件名
        String fileName = temp.getName();
        System.out.println(temp.isFile() + " " + temp.getAbsolutePath());
    readFileContent(temp);
    }
    }
  }

  /**
   * @param file 要读取的文件对象
   * @return 返回文件的内容
   * */
  public static String readFileContent(File file) throws IOException{
    FileReader fr = new FileReader(file);
    BufferedReader br = new BufferedReader(fr);
    StringBuffer sb = new StringBuffer();
    while(br.ready()){
//      sb.append(br.readLine());
      System.out.println(br.readLine());
    }
    System.out.println(sb.toString());
    return sb.toString();
  }

  /**
   * @param file 要写入的文件对象
   * @param content 要写入的文件内容
   * */
  public static void writeFileContent(File file,String content) throws IOException{
    FileWriter fw = new FileWriter(file);
    fw.write(content);
    fw.flush();
    fw.close();
  }

  public static void main(String[] args) {
    try {
      findFile(new File(basePath));
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
  }
}

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • java读取txt文件代码片段

    本文实例为大家分享了java读取txt文件的具体代码,供大家参考,具体内容如下 学习小记: 1.首先要根据路径获取你的 txt 文本文件.File file = new File(path); 2.将获取到的这个字节码流读进缓存.new FileInputStream(file) ; 3.然后对刚才读进缓存的输入流进行解读,生成对应字节流.InputStreamReader(readIn) 4.再然后通过 BufferedReader 这个类进行一行一行的输出.bufferedReader.re

  • Java读取txt文件中的数据赋给String变量方法

    实例如下所示: public class MainActivity { private static final String fileName = "D:/Tao/MyEclipseWorkspace/resources/weather.txt"; public static void main(String[] args) { //读取文件 BufferedReader br = null; StringBuffer sb = null; try { br = new Buffer

  • Java读取txt文件和写入txt文件的简单实例

    写Java程序时经常碰到要读如txt或写入txt文件的情况,但是由于要定义好多变量,经常记不住,每次都要查,特此整理一下,简单易用,方便好懂! package edu.thu.keyword.test; import java.io.File; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream;

  • Java读取TXT文件内容的方法

    Java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 既然你使用了FileInputStream().那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据 解读完成后要输出

  • JAVA实现读取txt文件内容的方法

    通常,我们可以直接通过文件流来读取txt文件的内容,但有时可能会出现乱码!此时只要设置一下文件字符编码即可. public class txttest { /** * 读取txt文件的内容 * @param file 想要读取的文件对象 * @return 返回文件内容 */ public static String txt2String(File file){ StringBuilder result = new StringBuilder(); try{ BufferedReader br

  • Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法

    本文实例讲述了Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法.分享给大家供大家参考,具体如下: package javatest; import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOEx

  • Java读取txt文件的方法

    java读取txt文件内容.可以作如下理解: 首先获得一个文件句柄.File file = new File(); file即为文件句柄.两人之间连通电话网络了.接下来可以开始打电话了. 通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进来内存当中了.接下来需要解读成乙方可以理解的东西 既然你使用了FileInputStream().那么对应的需要使用InputStreamReader()这个方法进行解读刚才装进来内存当中的数据 解读完成后要输出

  • java实现读取txt文件并以在每行以空格取数据

    简单一个例子.其中正则是取消多余空格或者tab键 package test4; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class ExplaceSql { public static void main(String[] args) { String filePath = ExplaceSql.class.getResource("").g

  • java读取txt文件并输出结果

    这篇文章主要介绍了java读取txt文件并输出结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 描述: 1.java读取指定txt文件并解析 文件格式: 代码: package com.thinkgem.wlw.modules.midea; import java.io.*; import java.util.ArrayList; import java.util.List; /** * @Author: zhouhe * @Date: 20

  • java实现读取txt文件中的内容

    我们先来看个例子 import java.io.*; /** * Created by liguoqing on 2016/3/28. */ public class ReadTxtFile { public static void readTxt(String filePath) { try { File file = new File(filePath); if(file.isFile() && file.exists()) { InputStreamReader isr = new

  • Java文件字符输入流FileReader读取txt文件乱码的解决

    目录 Java文件字符输入流FileReader读取txt文件乱码 先上代码 控制台输出结果如下 原因是 运行之后的结果为 字符流读取UTF-8和写出txt文件乱码问题 话不多说,直接上图 解决 Java文件字符输入流FileReader读取txt文件乱码 先上代码 public class FileInAndOut { public static void main(String[] args) { //定义指定磁盘的文件的File对象 File file = new File("E:/大三下

  • 使用BufferedReader读取TXT文件中数值,并输出最大值

    目录 BufferedReader读取TXT文件中数值输出最大值 1.题目 2.BufferedReader 介绍 3.思路 4.问题 5.解决 6.小结一下 使用BufferedReader读取文件的好处 BufferedReader读取TXT文件中数值输出最大值 1.题目 txt文件中数字的读取,并输出最大值 输出最大值92 2.BufferedReader 介绍 BufferedReader 是缓冲字符输入流.它继承于Reader. BufferedReader 的作用是为其他字符输入流添

随机推荐