我正在尝试在 .csv 文件中获取我的所有联系人。我已经完成了获取联系人的第一部分,现在剩下的是将文件写入 .csv 文件。请告诉我如何在 android 中创建 .csv 文件。
问问题
34342 次
1 回答
21
检查下面的代码以生成 CSV 文件。无需使用 jar 文件。
您必须将一个 csv 文件保存到 SD-CARD 中。
public void exportEmailInCSV() throws IOException {
{
File folder = new File(Environment.getExternalStorageDirectory()
+ "/Folder");
boolean var = false;
if (!folder.exists())
var = folder.mkdir();
System.out.println("" + var);
final String filename = folder.toString() + "/" + "Test.csv";
// show waiting screen
CharSequence contentTitle = getString(R.string.app_name);
final ProgressDialog progDailog = ProgressDialog.show(
MailConfiguration.this, contentTitle, "even geduld aub...",
true);//please wait
final Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
}
};
new Thread() {
public void run() {
try {
FileWriter fw = new FileWriter(filename);
Cursor cursor = db.selectAll();
fw.append("No");
fw.append(',');
fw.append("code");
fw.append(',');
fw.append("nr");
fw.append(',');
fw.append("Orde");
fw.append(',');
fw.append("Da");
fw.append(',');
fw.append("Date");
fw.append(',');
fw.append("Leverancier");
fw.append(',');
fw.append("Baaln");
fw.append(',');
fw.append("asd");
fw.append(',');
fw.append("Kwaliteit");
fw.append(',');
fw.append("asd");
fw.append(',');
fw.append('\n');
if (cursor.moveToFirst()) {
do {
fw.append(cursor.getString(0));
fw.append(',');
fw.append(cursor.getString(1));
fw.append(',');
fw.append(cursor.getString(2));
fw.append(',');
fw.append(cursor.getString(3));
fw.append(',');
fw.append(cursor.getString(4));
fw.append(',');
fw.append(cursor.getString(5));
fw.append(',');
fw.append(cursor.getString(6));
fw.append(',');
fw.append(cursor.getString(7));
fw.append(',');
fw.append(cursor.getString(8));
fw.append(',');
fw.append(cursor.getString(9));
fw.append(',');
fw.append(cursor.getString(10));
fw.append(',');
fw.append('\n');
} while (cursor.moveToNext());
}
if (cursor != null && !cursor.isClosed()) {
cursor.close();
}
// fw.flush();
fw.close();
} catch (Exception e) {
}
handler.sendEmptyMessage(0);
progDailog.dismiss();
}
}.start();
}
}
在清单中添加此权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
于 2013-03-14T07:02:54.310 回答