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