已有Word 2007文档,可以正常打开,通过文件流的操作存在了数据库里:                        private byte[] resumeDate = null;
                        using (resumeStream)   //resumeStream是通过OpenFileDialog打开的文件流
                        {
                            this.resumeData = new byte[resumeStream.Length];  
                            resumeStream.Read(this.resumeData, 0, System.Convert.ToInt32(resumeStream.Length));
                        }
在从数据库中下载
            SqlDataAdapter da = new SqlDataAdapter();
            DataTable dt = new DataTable();
            da.SelectCommand = new SqlCommand("SELECT Stream FROM FileTable", this.Conn);
            da.Fill(dt);            byte[] fileData = null;
            fileData = (byte[])dt.Rows[0]["Stream"];              int arraySize = new int();
            arraySize = fileData.GetUpperBound(0);      //arraySize这个变量的设置从MSDN学习而来
            
            FileStream fileStream = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Write);    //filePath这个string变量已经正确生成
            using (fileStream)
            {
                  fileStream.Write(fileData, 0, arraySize);
            }然后打开filePath这个文件,Word 2007提示
         “无法打开文件***, 因为内容有错误”  --- 文件已损坏,无法打开  
 
点击确定, 接着提示 “word在***中发现无法读取的内容,是否恢复此文档的内容?如果你信任次文档的来源,请单击“是””
我单击是之后,文件打开,内容显示正常请问如何处理这个问题谢谢

解决方案 »

  1.   

    截图见:http://picasaweb.google.com/studio4yong/CDSN?feat=directlink
      

  2.   

    同样的方法操作PDF文件、TXT文件正常
      

  3.   

    可能是你的word2007有问题了吧!你可以新建一个word文档,随便输入一些文字,然后压缩,再解压!看看是不是文件解压失败,提示文件易损坏!
      

  4.   

    打开word模板,写入数据再打开看看
      

  5.   

    我遇到了同样的问题,也是用stream上传下载word文档就会这样,但word2003不会报错。还没找到解决方法,貌似与word 2007版本新加了什么安全控制之类的有关。
    一年半了,lz找到办法没有?
      

  6.   

    找到解决方法了:不要用filestream直接读写,改用BinaryReader和BinaryWriter读写就好了。参考以下片段:
    上传:
    br = new BinaryReader((Stream)fs);
    bytContent = br.ReadBytes((Int32)fs.Length);
    下载:
    FileStream fsnew = new FileStream(filenew, FileMode.CreateNew);
     BinaryWriter brnew = new BinaryWriter(fsnew);
     brnew.Write(bytContent, 0, bytContent.Length);
      

  7.   

    在打开EXCEL有密码的文件时出现"文件已损坏,无法打开",请高手指点下,谢谢! 没有密码的文件均正常,OFFICE2007的版本, 并且其它的组件也是同样文件,如WORD等就会出现"密码错误..."等提示.操作系统是WIN7 64位旗舰版.高手帮我 
      

  8.   

    我也出现了同样的问题,对文件加密解密之后,打开word出现了问题,不知道怎么解决