把RichTextBox中的文本保存到Sql Server中(C#)[转载

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

原文地址:http://www.developer.com/net/net/article.php/11087_3373951_1

保存:

 private void btnSave_Click(object sender, System.EventArgs e)  {      FileStream stream = null;   SqlConnection conn = null;   SqlCommand cmd = null;   try   {    richTextBox1.SaveFile( "temp.rtf" );    stream = new FileStream("temp.rtf", FileMode.Open, FileAccess.Read);    int size = Convert.ToInt32(stream.Length);    Byte[] rtf = new Byte[size];    stream.Read(rtf, 0, size);

    conn = new SqlConnection("Database=Northwind;Integrated Security=true;");    conn.Open();    cmd = new SqlCommand("UPDATE Employees SET Photo=@Photo WHERE EmployeeID=1", conn);

    SqlParameter paramRTF =      new SqlParameter("@Photo",     SqlDbType.Image,     rtf.Length,     ParameterDirection.Input,     false,     0,0,null,     DataRowVersion.Current,     rtf);    cmd.Parameters.Add(paramRTF);        int rowsUpdated = Convert.ToInt32(cmd.ExecuteNonQuery());        MessageBox.Show(String.Format("{0} rows updated", rowsUpdated));   }   catch(Exception ex)   {    MessageBox.Show(ex.Message);   }   finally   {    if ( stream != null ) stream.Close();    if (cmd != null ) cmd.Parameters.Clear();    if (conn != null) conn.Close();   }  }

读取:

private void btnLoad_Click(object sender, System.EventArgs e)  {   richTextBox1.Clear();

   SqlConnection cn     = null;   SqlCommand cmd       = null;   SqlDataReader reader = null;   try   {    cn = new SqlConnection("Database=Northwind;Integrated Security=true;");    cn.Open();    cmd = new SqlCommand("SELECT Photo FROM Employees WHERE EmployeeID=1", cn);    reader = cmd.ExecuteReader();    reader.Read();    if (reader.HasRows)    {     if (!reader.IsDBNull(0))     {      Byte[] rtf = new Byte[Convert.ToInt32((reader.GetBytes(0, 0, null, 0, Int32.MaxValue)))];      long bytesReceived = reader.GetBytes(0, 0, rtf, 0, rtf.Length);        ASCIIEncoding encoding = new ASCIIEncoding();      richTextBox1.Rtf = encoding.GetString(rtf, 0, Convert.ToInt32(bytesReceived));     }    }   }   catch(Exception ex)   {    MessageBox.Show(ex.Message);   }   finally   {    if (reader != null ) reader.Close();    if (cn != null ) cn.Close();   }

  }

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值