日期:2014-05-17  浏览次数:21115 次

C#怎样将rtf格式的图文混排的文档在access数据库中进行存取
我在网上看了一些这方面的代码,但自己用的时候,用richtextbox加载的时候总是出现文件格式无效的异常
下面是我的一段代码
da是datadclass的一个实例
 for (int j = 73901; j < 73904; j++)
                    {
                        MemoryStream ms1 = new MemoryStream();
                        richTextBox1.LoadFile("0"+j+".rtf");
                        richTextBox1.SaveFile(ms1, RichTextBoxStreamType.RichText);
                        byte[] by2 = (byte[])ms1.ToArray();
                        strsql = "update  word set 諸家解說='" + by2 + "' where 编号='" + i.ToString() + "'";
                        int m = da.Sqlcmd(by2, i);
                        if (m == 0)
                            MessageBox.Show(i.ToString() + "is not imported successfuly!");
                    }

下面是dataclass类里面的sqlcmd方法
 public int Sqlcmd(byte[] rtf,int bh)
        {
            cmd = new OleDbCommand();
            cmd.Connection = this.Sqlconn();
            cmd.CommandText ="update word set 諸家解說=@zjjs where 编号="+bh+"";
            cmd.Parameters.Add(new OleDbParameter("@zjjs",OleDbType.Binary, rtf.Length, "諸家解說"));
            cmd.Parameters.Add(new OleDbParameter("@编号",OleDbType.Integer));
            //cmd.Parameters.AddWithValue("@zjjs",);
            cmd.Parameters["@zjjs"].Value = rtf;
            cmd.Parameters["@编号"].Value = bh;
           int m= cmd.ExecuteNonQuery();
           this.Closeconn();
           return&n