javaはcsvファイルとtxtファイルをコードに読み込みます

package com.yanghuan.document;

import org.apache.commons.lang3.StringUtils;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Map;

public class DocumentCompare {
    public static void main(String[] args) {
        try{
            obtainAppIdAndDeviceIdOfTxt();
        } catch (Exception e){
            System.out.println("ffff---"+e);
        }

    }
    
    //读入csv文件到内存
    public static Map<String, String> obtainAppIdAndDeviceId() throws Exception {
        //创建字符缓冲输入流对象
        BufferedReader br = new BufferedReader(new FileReader("D:\\0\\sn.csv"));
        String line;
        Map<String,String> map=new HashMap<String,String>();
        while ((line = br.readLine()) != null) {
            if(StringUtils.isBlank(line)){
                continue;
            }
            String item[] = line.split(",");//CSV格式文件为逗号分隔符文件,这里根据逗号切分
            String s1=item[0];
            String dev=null;
            if(!s1.contains(":")){
                dev=s1.substring(s1.lastIndexOf(":")+1).replaceAll("\"", "").replaceAll("}", "");
            }
            for(int i=0;i<item.length;i++){
                String nb=item[i];
                if(!nb.contains("app")){
                    continue;
                }
                //比如nb为{"app":"FHJKLMK"},则通过下面的substring后为app为"FHJKLMK"
                String app=nb.substring(nb.lastIndexOf(":")+1).replaceAll("\"", "").replaceAll("}", "");
                map.put(dev,app);
                System.out.println("dev--"+dev+"---app:"+app);
            }
        }
        //释放资源
        br.close();
        return map;
    }

    
    //读入txt文件到内存代码
    public static Map<String, String> obtainDeviceIdOfTxt() throws Exception {
        //创建字符缓冲输入流对象
        BufferedReader br = new BufferedReader(new FileReader("D:\\0\\smm.txt"));
        String line;
        Map<String,String> map=new HashMap<String,String>();
        while ((line = br.readLine()) != null) {
            if(StringUtils.isBlank(line)){
                continue;
            }
            String item[] = line.split("------");
            String s1=item[0];
            map.put(s1,s1);
        }
        //释放资源
        br.close();
        return map;
    }


//将内存代码中的計算写入txt文件publicstatic 
void writeDataToTxt (Map <String、String> result)throws Exception { 
    String line = System.getProperty( "line.separator"); 
    StringBuffer str = new StringBuffer(); 
    FileWriter fw = new FileWriter( "D:\\ 0 \\ redisDataEnd.txt"、true); 
    for(Map.Entry <String、String> entry:result.entrySet()){ 
        str.append(entry.getKey()+ ":" + entry.getValue())。append(line); 
    } 
    fw.write(str.toString()); 
    fw.close(); 
}
}

おすすめ

転載: blog.csdn.net/yanhhuan/article/details/111323449