就是下面这段代码,第一次保存没问题,再次用同一个文件名保存是就会出错. 
原因是因为::::已经存在表Sheet1,我想问各位 我该怎么在保存时判断是否有同名文件,有的话就把里面的表drop掉,没有的话就create一个表if(this.savFileExcel.ShowDialog()==DialogResult.OK)
{
string FileName=savFileExcel.FileName; string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";Extended Properties=Excel 8.0;";
OleDbConnection objConn = new OleDbConnection(connString);
OleDbCommand objCmd = new OleDbCommand();
objCmd.Connection = objConn;
objConn.Open();
//建立表结构
objCmd.CommandText = @"CREATE TABLE Sheet1(职工号 varchar,姓名 varchar,性别 varchar,用户名 varchar)";
objCmd.ExecuteNonQuery();
         objConn.Close();
}

解决方案 »

  1.   

    我问的就是怎么判断这个文件名是否存在,saveFileDialog保存时自己就判断了,存在它就会弹出一个选择框 问是否覆盖,我不知道怎么获取这个对话框的返回值
      

  2.   

    Sample code as follows:if (File.Exists(yoursaveFileDialog.FileName)) {
           fs = new FileStream(editingFileName, FileMode.Open);
    }
    else {
           fs = new FileStream(editingFileName, FileMode.Create);
    }
      

  3.   

    如下
    File.Exists(yoursaveFileDialog.FileName) See it in msdn
      

  4.   

    我倒时很想知道,如何初始化SaveFileDialog的文件名,
      

  5.   

    引入Sytem.IO命名空间,在该空间里,包含了处理文件夹和文件的相关类,其中Directory和File两个类是很常用的静态类。判断一个文件是否存在;
    if(File.Exists(string path))
    然后删除:
    File.Delete(string path);