关于JAVA封存文件内容至数据库
发现许多数据库客户端软件都支持将CSV或者TXT文件格式的数据直接导入至数据库,希望通过模拟开发一个类似工具包来实现这一功能。
对于网上的使用CSVREADER方式来获取,个人觉的使用纯粹的IO流可以更好地学习JAVA内容,并且对相关情况进行处理。主要使用到BufferedReader类来进行按行读取相关的读取操作。主要功能是以字符串集合的方式返回相关数据。直接上工具代码:
/**
* 读取CSV文件信息
* @param file 文件
* @param c 分隔符''
* */
public static List<String[]> getCSVDate(File file,String c) {
List<String[]> list = new ArrayList<String[]>();
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
// 一次读入一行,直到读入null为文件结束
while ((tempString = reader.readLine()) != null) {
// 显示行号
String[] temp = tempString.split(c);
list.add(temp);
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
return list;
}
方法调用:
@Test
public void testCastAndAdd(){
List<String[]> list = CsvUtil.getCSVDate(new File("D://test1.csv"),",");
//格式验证list.get(0);
for (int i = 0; i < list.size(); i++) {
if (i==0) {
continue;
}
String[] str = list.get(i);
for (int j = 0; j < str.length; j++) {
//在此处对需要保存的数据内容进行循环封装
System.out.print(str[i]+"\n");
}
}
}