我目前正在创建一个CSV文件并尝试将SQLite数据库的内容写入其中。不幸的是,我一直收到“路径上的共享冲突”错误。它在我尝试WriteAllText的行上出错。
以下是我目前的代码:
var fileName = Android.OS.Environment.ExternalStorageDirectory + Java.IO.File.Separator + "pullList" + pullMonth + ".csv";
using (var fs = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None))
{
//Write your file here
//fs.WriteLine("Hello");
foreach (var listing in allTables)
{
File.WriteAllText(Path.Combine(fileName), string.Format("{0}," + System.Environment.NewLine, listing.ComicTitle));
}
}
答案 0 :(得分:1)
您正在创建一个流,但不使用它来编写。由于流正在使用FileShare.None创建文件,因此当您尝试使用其他文件句柄进行写入时,会抛出共享异常
试试这个
var filename = Path.Combine(Android.OS.Environment.ExternalStorageDirectory, "pullList" + pullMonth + ".csv");
StringBuilder s = new StringBuilder();
// build the data in memory
foreach (var listing in allTables)
{
s = s.AppendLine(listing.ComicTitle);
}
// write the data all at once
File.WriteAllText(path,s);