我有一个静态的csv文件。我想将csv文件中的所有数据转换为数据库,以便我可以访问应用程序中csv文件中的数据。我已经搜索了很多关于这一点。但我仍然无法找到适合我事业的东西。有人可以帮我这个吗?谢谢。
答案 0 :(得分:1)
我不知道任何会自动获取CSV文件并填充数据库的内容。至少,您需要自己将文件中的每个值映射到数据库行。您将不得不编写自己的代码来处理CSV文件(使用库或其他方式),并编写代码以将每个CSV“行”插入到sqlite中。
请注意,处理您控制格式的CSV文件非常简单。你可以使用FileRead和String.split()。然后,再次假设CSV行中的值N映射到DB中的col N,您可以这样做,
private static final List<String> COLUMNS = new ArrayList<String>() {
add("NAME"); add("ADDRESS"); add("ZIPCODE"); ...;
}
SQLiteDatabase db = ...;
BufferedReader br = new BufferedRead(new FileReader("foo.csv"));
String line;
while ((line = br.readLine()) != null) {
Iterator cols = COLUMNS.iterator();
String[] vals = line.split("\\s*,");
ContentValues cv = new ContentValues();
for (String v: vals) {
cv.put(cols.next(), v);
}
db.insert(..., cv);
}
在此示例中,您必须确保COLUMNS中定义的列的顺序与每个CSV行中的值的顺序完全匹配。
答案 1 :(得分:0)
最后我想通了,可以使用sqlite firefox扩展等工具将csv文件转换为sqlite数据库文件。然后可以在应用程序中使用转换后的文件。
答案 2 :(得分:-1)
首先在程序中导入csv文件 你没告诉你的节目 如果您使用.net将您的csv文件加载到datagridview,然后将整个数据保存到sqlite数据库..