RichTextBox Rtf流保存数据库操作
将RichTextBox的内容直接写入数据库:
private void button1_Click(object sender, EventArgs e)
{
System.IO.MemoryStream mstream = new System.IO.MemoryStream();
this.richTextBox1.SaveFile(mstream, RichTextBoxStreamType.RichText);
//将流转换成数组
byte[] bWrite = mstream.ToArray();
//将数组写入数据库
System.Data.SqlClient.SqlParameter[] pram ={
sqlHelper.MakeInParam("@XX",System.Data.SqlDbType.Image)
};
pram[0].Value = bWrite;
sqlHelper.RunSql("insert into XXX (XX) values (@XX)", pram);
}
将数据库中的RTF读出并填充到RichTextBox
private void button2_Click(object sender, EventArgs e)
{
//从数据库中读出数据
DataTable dt=sqlHelper.GetDataTable("select XX from XXX where .....");
byte[] bWrite = (byte[])dt.Rows[0][0];
//将数组转换成stream
System.IO.MemoryStream mstream = new System.IO.MemoryStream(bWrite, false);
//将stream填充到RichTextBox
this.richTextBox1.LoadFile(mstream, RichTextBoxStreamType.RichText);
}