怎么写二进制流进数据库
怎么把一个文本框里面的文本以二进制流写进数据库的... --------------------编程问答-------------------- http://topic.csdn.net/t/20020405/14/625197.html --------------------编程问答--------------------using System;--------------------编程问答-------------------- System.Byte[] buffer = System.Text.Encoding.Default.GetBytes(str);
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using System.IO;
namespace OleDbImageSample
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\VisualStudioProject2010\Winform\OleDbImageSample\OleDbImageSample\DB\ImagesDB.mdb";
private void button1_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() != System.Windows.Forms.DialogResult.OK)
return;
var file = openFileDialog1.FileName;
try
{
using (var conn = new OleDbConnection(strConn))
{
var comm = new OleDbCommand();
comm.Connection = conn;
comm.CommandText = "insert into images (FileName, Data) values (?, ?)";
var p1 = new OleDbParameter();
p1.DbType = DbType.String;
p1.Value = Path.GetFileName(file);
comm.Parameters.Add(p1);
var p2 = new OleDbParameter();
p2.DbType = DbType.Binary;
p2.Value = File.ReadAllBytes(file);
comm.Parameters.Add(p2);
conn.Open();
comm.ExecuteNonQuery();
MessageBox.Show("Insert Successfully");
var adapter = new OleDbDataAdapter("select Id, FileName from images", conn);
var list = new DataTable();
adapter.Fill(list);
this.listBox1.DataSource = list;
this.listBox1.DisplayMember = "FileName";
this.listBox1.ValueMember = "Id";
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void button2_Click(object sender, EventArgs e)
{
if (listBox1.SelectedValue == null)
return;
var id = (int)listBox1.SelectedValue;
var sql = "select data from images where id=" + id;
using (var conn = new OleDbConnection(strConn))
{
var comm = new OleDbCommand();
comm.CommandText = sql;
comm.Connection = conn;
conn.Open();
var reader = comm.ExecuteReader();
if (reader.Read())
{
var data = (byte[])reader.GetValue(0);
using (var ms = new MemoryStream(data))
this.pictureBox1.Image = Image.FromStream(ms);
}
}
}
}
}
Encoding. 选择你的字符编码
补充:.NET技术 , C#