假设C:\ fileupload中有一个包含这两个csv文件的文件夹:
file1.csv有2列(VendorID,Name)
file2.csv有2列(VendorID,地址)/////这里VendorID对应于file1.csv并随机放在file2.csv中
假设file1.csv包含:
101,供应商1 102,供应商2
file2.csv包含 102,澳大利亚 101,USA
我想从这两个文件中检索数据并将其存储在oracle数据库中:
厂商ID,姓名,地址
101,供应商1,USA 102,供应商2,澳大利亚
并且plz具体告诉我只通过java 任何帮助将不胜感激。
由于
答案 0 :(得分:-1)
textfile1.csv
loginid3,password3
loginid5,password5
loginid1,password1
loginid4,password4
loginid2,password2
textfile2.csv
loginid3,address3
loginid2,address2
loginid1,address1
loginid5,address5
loginid4,address4
输出:
Key : loginid3 Value : password3 address :address3
Key : loginid2 Value : password2 address :address2
Key : loginid1 Value : password1 address :address1
Key : loginid4 Value : password4 address :address4
Key : loginid5 Value : password5 address :address5
CSVReadLoginPass.java
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class CSVReadLoginPass {
public static Map<String,String> map1 = null;
public static Map<String,String> map2 = null;
public static void main(String[] args) {
try
{
readFileandPopulate();
for (Map.Entry<String, String> entry : map1.entrySet()) {
System.out.println("Key : " + entry.getKey() + " Value : "
+ entry.getValue()+" address :"+map2.get(entry.getKey()));
//insert into DB
}
}catch (Exception e){//Catch exception if any
e.printStackTrace();
System.err.println("Error: " + e.getMessage());
}
}
public static void readFileandPopulate() throws Exception
{
FileInputStream fstream = new FileInputStream("E:\\Eclipse-Leo\\StackOverflow\\src\\resources\\textfile1.csv");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
map1 = new HashMap<String,String>();
while ((strLine = br.readLine()) != null) {
System.out.println(strLine);
String temp[] = strLine.split(",");
map1.put(temp[0], temp[1]);
}
in.close();
System.out.println("done 1");
FileInputStream fstream2 = new FileInputStream("E:\\Eclipse-Leo\\StackOverflow\\src\\resources\\textfile2.csv");
DataInputStream in2= new DataInputStream(fstream2);
BufferedReader br2 = new BufferedReader(new InputStreamReader(in2));
String strLine2;
map2 = new HashMap<String,String>();
while ((strLine2 = br2.readLine()) != null) {
System.out.println(strLine2);
String temp[] = strLine2.split(",");
map2.put(temp[0], temp[1]);
}
in2.close();
}
}