- #region 将文件保存到本地
- /// <summary>
- /// 将文件保存到本地
- /// </summary>
- /// <param name="psContent">文件的二进制数据字符串</param>
- /// <param name="psFileName">文件名称,必须带后缀</param>
- private void SaveFile(string psContent, string psFileName)
- {
- byte[] accessory = Convert.FromBase64String(psContent);
- //System.AppDomain.CurrentDomain.BaseDirectory获取程序的基目录
- string vsAccessoryPath = System.AppDomain.CurrentDomain.BaseDirectory.TrimEnd('\\') + '\\' + psFileName;
- FileStream fileStream = null;
- try
- {
- //File.Create Method (String):Creates or overwrites a file in the specified path.
- fileStream = File.Create(vsAccessoryPath);
- }
- catch (System.IO.IOException e)
- {
-
- }
- //FileStream.Write Method:Writes a block of bytes to the file stream.
- fileStream.Write(accessory, 0, accessory.Length);
- //FileStream.Flush 方法:清除该流的所有缓冲区,使得所有缓冲的数据都被写入到基础设备。
- fileStream.Flush();
- //FileStream.Close Method:Closes the file and releases any resources associated with the current file stream.
- fileStream.Close();
- }
- #endregion
假如文件流保存在数据库中:
- string vsSql = "";//从数据库中获取待转换保存文件的内容(比如,之前把文件转换为字节流保存到数据库中了)
- DataSet dsContent = 获取DataSet的数据库操作;
- byte[] vbContent = (byte[])(dsContent.Tables[0].Rows[0]["数据库中保存文件内容的列名"]);
- string vsContent = Convert.ToBase64String(vbContent);
字节流保存在数据库中的样子: