如何复制access数据库并使用c#保存?
我试图通过创建一个新的数据库文件来保存access数据库文件,并将其保存到用户喜欢的任何位置,同时命名该文件 我尝试使用这段代码,但它说“文件无法访问,因为它被另一个进程使用”。有什么想法吗如何复制access数据库并使用c#保存?,c#,ms-access,copy,save,savefiledialog,C#,Ms Access,Copy,Save,Savefiledialog,我试图通过创建一个新的数据库文件来保存access数据库文件,并将其保存到用户喜欢的任何位置,同时命名该文件 我尝试使用这段代码,但它说“文件无法访问,因为它被另一个进程使用”。有什么想法吗 private void btnSelectDatabase_Click(object sender, EventArgs e) { ofdMain.ShowDialog(); lblDatabase.Text = ofdMain.FileName; }
private void btnSelectDatabase_Click(object sender, EventArgs e)
{
ofdMain.ShowDialog();
lblDatabase.Text = ofdMain.FileName;
}
private void btnLoadDatabase_Click(object sender, EventArgs e)
{
try
{
test = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;
Data Source=" + lblDatabase.Text);
test.Open();
refresh();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnSave_Click_1(object sender, EventArgs e)
{
sfdMain.ShowDialog();
}
private void sfdMain_FileOk(object sender, CancelEventArgs e)
{
StreamReader read = new StreamReader(lblDatabase.Text);
Stream s = File.Open(sfdMain.FileName, FileMode.CreateNew);
StreamWriter writer = new StreamWriter(s);
writer.Close();
}
您正在使用
StreamReader
和StreamWriter
复制文件?使用File.Copy(SourceFile,TargetFile)不是更容易吗代码>?是-文件已被此进程或其他进程打开。-你希望我们做什么?提示:告诉更多关于它的信息(你在做什么,如何,异常发生在哪里a.s.o.)@LukeWage我想这样做,但文件尚未创建。所以基本上没有目标文件。@cSharpNoobies:目标文件不一定存在。恰恰相反:如果它存在,您将得到一个错误。这里有更多的信息:@Jefferson我在c#还是新来的,我对它还不太了解,所以我希望你们能告诉我正确的方法。我试着参考书籍,但找不到解决办法。我试图复制用户打开的access数据库文件,并通过创建新文件将其保存在另一个access数据库文件中。我希望你们能理解。T.T