怎样将数据库中的文件(word文档)以"abc.doc"的名字命名并且保存在应用程序的同目录中

解决方案 »

  1.   

    string filePath=this.saveFileDialog1.FileName;SqlConnection myConnection=new SqlConnection();
    SqlCommand myCommand=new SqlCommand();myConnection.ConnectionString=ConnectionString;
             myConnection.Open();string sql="select FileContent from Sys_NoStructureDatas where Sys_ID="+id;
    myCommand.Connection=myConnection;
    myCommand.CommandType=CommandType.Text;
    myCommand.CommandText=sql;SqlDataReader myDataReader=myCommand.ExecuteReader();if(myDataReader.Read())
    {
    System.IO.FileInfo myFileInfo=new FileInfo(filePath);
    System.IO.FileStream myFileStream=myFileInfo.Open(System.IO.FileMode.OpenOrCreate);byte[] imgData=(byte[])myDataReader["FileContent"];
    foreach(byte a in imgData)
    {
    myFileStream.WriteByte(a);}myFileStream.Close();
    myDataReader.Close();}myConnection.Close();
    MessageBox.Show("文件保存成功!",this.Text,MessageBoxButtons.OK,MessageBoxIcon.Information);filePath是路径+文件名。
      

  2.   

    bhwhy(苏秦) :能不能加点中文说明
      

  3.   

    我的是access数据库里面保存文件名和文件数据
      

  4.   

    首先,你在数据库中存的也应当是word文档。否则读出时可能会错。可以像向北兄说的,把格式记下来。读出来的时候作判断生成什么格式的文件即可。
    上面那段就是从数据库中读文件,然后生成到一个指定的目录下啊。。关于文件读写的操作主要就是用System.IO.FileStream myFileStream,System.IO.FileInfo ,byte[] ,先读到byte[] 里,再写出来
      

  5.   

    Access里的不太了解。应当也一样吧。我写的是SQL里的,你在论坛中搜一下,肯定有介绍
      

  6.   

    谢过苏秦,我还是等access高手来吧
      

  7.   

    我的文件是在没有转换的情况下保存在数据库中的(就是说我在access数据库中打开表右点击OLE类型字段选择插入对象将文件保存在数据库中),我在网上看了些帖子觉得我的这种保存是以字节保存的文件,而不是二进制,请高手执教如何将这种文件读取出来保存在硬盘上,并且能打开
      

  8.   

    to 我在网上看了些帖子觉得我的这种保存是以字节保存的文件,而不是二进制,请高手执教如何将这种文件读取出来保存在硬盘上,并且能打开如果文件数据对应的是ole字段类型,肯定是用byte来进行保存的。只要反向操作即可。