程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> 用 C# 編程實現讀寫Binary

用 C# 編程實現讀寫Binary

編輯:關於.NET

 本文給出一個用 C# 編程實現讀寫 Binary 的實例代碼,對於初學者來說是個不可多得的參考性文章……

  //返回blob數據 
  public MemoryStream getBlob(string SQL) 
  ...{ 
  try 
  ...{ 
  Db_Conn(); 
  cmd = new OleDbCommand(SQL, Conn); 
  cmd.CommandType = CommandType.Text;//是sql 
  OleDbDataReader Rs = cmd.ExecuteReader(); 
  if (Rs.Read()) //循環到下一條記錄 
  ...{ 
  if (!(Rs.GetValue(0) is System.DBNull)) 
  ...{ 
  byte[] image_bytes = (byte[])Rs.GetValue(0); 
  MemoryStream ms = new MemoryStream(image_bytes); 
  return ms; 
  } 
  else 
  return null; 
  } 
  else 
  return null; 
  } 
  finally 
  ...{ 
  this.close(); 
  } 
  } 
  //設置blob 
  public bool SetBlob(string SQL, MemoryStream Ms) 
  ...{ 
  try 
  ...{ 
  Db_Conn(); 
  cmd = new OleDbCommand(SQL, Conn); 
  cmd.CommandType = CommandType.Text;//是sql 
  int n=Convert.ToInt32(Ms.Length.ToString()); 
  Ms.Position = 0; 
  byte[] pReadByte = new Byte[n]; 
  Ms.Read(pReadByte, 0, n); 
  cmd.Parameters.Add("BLOB", OleDbType.Binary).Value = pReadByte; 
  cmd.ExecuteNonQuery(); 
  return true; 
  } 
  catch (Exception ex) 
  ...{ 
  MessageBox.Show("錯誤:因" + ex.Message + ",無法執行:" + SQL); 
  return false; 
  } 
  finally 
  ...{ 
  this.close(); 
  } 
  }

  調用 getBlob

  String sqlStr = "select content from dp where id=" + ID;//content為dp中的BLOB字段,ID為主鍵 
  MemoryStream ms = DBClass.getBlob(sqlStr); 
  if (ms == null) 
  richTextBox.Clear(); 
  else 
  ...{ 
  if (ms.Length > 0) 
  ...{ 
  ms.Position = 0; 
  try 
  ...{ 
  richTextBox.LoadFile(ms, RichTextBoxStreamType.RichText); 
  }catch...{ 
  richTextBox.LoadFile(ms, RichTextBoxStreamType.PlainText); 
  } 
  }else 
  richTextBox.Clear(); 
  }

  調用setBlob

  String sqlStr = "update dp set content=:BLOB where id=" + ID; 
  MemoryStream ms = new MemoryStream(); 
  richTextBox.SaveFile(ms, RichTextBoxStreamType.RichText); 
  if (!DBClass.SetBlob(sqlStr, ms)) 
  ...{ 
  MessageBox.Show("保存失敗"); 
  }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved