dataset 中将 将2进制数组列的数据 转换成文件 和 从文件中 转换到 dataset 方法
///将2进制数组转换成文件
/// </summary>
/// <param name="psPath">路径+文本文件名字</param>
/// <param name="ds">数据源</param>
/// <param name="row">行号</param>
/// <param name="col">列名称</param>
private void tofilebyte(string psPath,DataSet ds,int row,string col)
{
FileStream fileStream = new FileStream(psPath , FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter binaryWriter = new BinaryWriter(fileStream);
Byte[] byteBLOBData = new Byte[0];
if(ds.Tables[0].Rows[row][col] != System.DBNull.Value)
byteBLOBData = (Byte[])(ds.Tables[0].Rows[row][col]);
binaryWriter.Write(byteBLOBData);
binaryWriter.Flush();
binaryWriter.Close();
fileStream.Close();
}
//转换成2进制数组 导入到dataset 直接赋给 dataset 对应列类型System.Byte[]
/// <summary>
/// 根据路径从文本文件中 取数
/// </summary>
/// <param name="Filename">路径+表名称</param>
/// <returns>Image类型数据</returns>
public static byte[] GetFileBytes(string Filename)
{
if (Filename == "")
return null;
FileStream fileStream = new FileStream(Filename, FileMode.Open, FileAccess.Read);
BinaryReader binaryReader = new BinaryReader(fileStream);
byte[] fileBytes = binaryReader.ReadBytes((int)fileStream.Length);
binaryReader.Close();
fileStream.Close();
return fileBytes;
}