zoukankan      html  css  js  c++  java
  • 把RichTextBox中的文本保存到Sql Server中

    保存:
        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(00null0, Int32.MaxValue)))];
                            
    long bytesReceived = reader.GetBytes(00, 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();
                }


            }
  • 相关阅读:
    构造函数析构函数为什么没有返回值?
    std::tr1::shared_ptr 使用的一点体会
    C++完美实现Singleton模式
    为什么C++中空类和空结构体大小为1?
    同时判断CPU是大端还是小端完全实现
    优先级反转
    linux sed 批量替换字符串
    禁掉Apache web server签名 How to turn off server signature on Apache web server
    Python中用format函数格式化字符串的用法
    Eclipse (indigo) 中安装jdk包并运行Maven
  • 原文地址:https://www.cnblogs.com/dahuzizyd/p/27787.html
Copyright © 2011-2022 走看看