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();

}

}

}

结果:

以上是 java读取txt文件并输出结果 的全部内容, 来源链接: utcz.com/z/353781.html

回到顶部