我做了个程序,先生成一个EXCEL文件,然后向其中加入数据。
可是当程序退出后,这个文件也没有了。本来已经生成的。
这个问题在我的XP下没有出现过,可是拿到2000下,就出现了好多次,请问大家!

解决方案 »

  1.   

    close stream!!!!==============================
    有理想,没道德,有文化,没纪律
      

  2.   

    我感觉花生说的有道理,可是如何解决呢。
    我又检查了一次,conn都close();da,是自动的cmd也都close();应该不会有错啊!
    public bool SaveExcel(string mm)//保存一个表
    {
    try
    {
    System.Console.Write(mm);
    Excel.Application  oExcel;  
    Excel.Workbook  oBook;  
    Object  oMissing  =  System.Reflection.Missing.Value;  
    oExcel  =  new  Excel.Application();  
    oBook  =  oExcel.Workbooks.Add(oMissing); 
    oExcel.Cells[1,1]="title";
    oExcel.Cells[1,2]="url";
    oExcel.Cells[1,3]="cityid";
    oExcel.Cells[1,4]="vocation";
    oExcel.Cells[1,5]="tel";
    oExcel.Cells[1,6]="mail";
    oExcel.Cells[1,7]="fax";
    oBook.Saved  =  true;  
    oExcel.UserControl  =  false;  
    //string  mm="c:\\aa.xls";//服务器保存地址  

    oExcel.ActiveWorkbook.SaveCopyAs(mm);
    oExcel.Quit(); 
    return true;
    }
    catch(Exception ex)
    {
    System.Console.Write(ex.Message);
    return false;
    }
    }
    这是代码,请大家指正。
    public void GetKeywords(string path,string v1,string v2,string v3,string v4,string v5,string v6,string v7)//加记录
    {
    string strCon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+path+";Extended Properties=\"Excel 8.0\""; 
    OleDbConnection myConn=new OleDbConnection(strCon);
    string strCom="insert into [Sheet1$] values('"+v1+"','"+v2+"','"+v3+"','"+v4+"','"+v5+"','"+v6+"','"+v7+"')"; 
    System.Data.OleDb.OleDbCommand cmd=new OleDbCommand(strCom,myConn);
    try
    {
    myConn.Open(); 
    cmd.ExecuteNonQuery();
    }
    catch(Exception ex)
    {
    System.Console.Write(ex.Message);
    }
    finally
    {
    myConn.Close();
    myConn.Dispose();
    cmd.Dispose();
    }

    }
      

  3.   

    我以前在2000做了一个将数据库中的数据导入到Excel文件的程序
    都不会出现这种情况
      

  4.   

    2000和XP上对EXCEL有什么不同吗,