private SqlDataAdapter dataAdapter; // 数据适配器 private DataSet dataSet; string sql = ("select photo from StuImage where num='200840410201'" dataAdapter = new SqlDataAdapter(sql, DBHelp.connection); dataSet = new DataSet("photo "); dataAdapter.Fill(dataSet, "photo "); FileStream myFileStream; MemoryStream myMemoryStream = new MemoryStream((byte[])dataSet.Tables[0].Rows[0]["photo "]); myFileStream = new FileStream(@"C:\Documents and Settings\Administrator\桌面\1.jsp", FileMode.Create, FileAccess.Write); BinaryWriter myBinaryWriter = new BinaryWriter(myFileStream); byte[] aBtEntityFile = myMemoryStream.ToArray(); myBinaryWriter.Write(aBtEntityFile); myBinaryWriter.Close(); myFileStream.Close(); myMemoryStream.Close(); 你的二进制存入就有问题。。我给你这个例子 你可以参考