文件字节流/Base64文件数据--保存pdf文件

Base64文件数据和文件字节流数据,保存方式异曲同工,如下

Base64文件数据转PDF

/// <summary>
/// Base64 转PDF
/// </summary>
/// <param name="wayBillNo">单号,或相对唯一的值</param>
/// <param name="Base64Str">Base64 数据</param>
/// <returns></returns>
public static string Base64ChangePDF(string wayBillNo, string Base64Str)
{
    //从base64字符串转换为字节数组
    byte[] bytes = Convert.FromBase64String(Base64Str);
    //文件保存文件夹
    string PathName = "/Content/SuNiaoPrint";
    //保存的文件名
    string fileName = "Pdf" + wayBillNo + ".pdf";
    //获取文件保存文件夹(绝对位置)
    String dirPath = System.Web.HttpContext.Current.Server.MapPath(PathName);
    //判断文件保存文件夹是否存在
    if (!Directory.Exists(dirPath)) {
        //不存在则生成文件夹
        Directory.CreateDirectory(dirPath);
    }
    //拼接文件夹路径和文件名    
    string filePath = Path.Combine(dirPath, fileName);
    //创建保存的文件
    FileStream fs = new FileStream(filePath, FileMode.Create);
    //字节数组写入文件中
    fs.Write(bytes, 0, bytes.Length);
    //关闭文件
    fs.Close();
    //返回文件保存相对位置
    return Path.Combine(PathName, fileName);
}

 文件流文件转换成pdf

/// <summary>
/// 文件流文件转换成pdf
/// </summary>
/// <param name="OrderExpreNum">单号,或相对唯一的值</param>
/// <param name="Bytes">文件字节流</param>
/// <returns></returns>
public static string BytesChangePDF(string OrderExpreNum, byte[] Bytes)
{
    //文件流
    byte[] fileData = (byte[])Bytes;
    //保存文件-文件名称
    string fileName = OrderExpreNum + ".pdf";
    //保存文件-文件夹位置
    string DirPathName = "/Content/print/pdf";
    //获取保存文件夹 绝对路径
    String dirPath = System.Web.HttpContext.Current.Server.MapPath(DirPathName);
    //判断保存文件夹是否存在
    if (!Directory.Exists(dirPath)) {
        //不存在创建文件夹
        Directory.CreateDirectory(dirPath);
    }
    //拼接文件夹路径和文件名
    string filePath = Path.Combine(dirPath, fileName);
    //创建要保存的文件
    FileStream fs = new FileStream(filePath, FileMode.Create);
    //将文件字节流写入文件中
    fs.Write(fileData, 0, fileData.Length);
    //关闭文件夹
    fs.Close();
    //返回保存文件 相对路径
    return Path.Combine(DirPathName, fileName);
}

 

posted @ 2020-08-20 10:32    阅读(2393)  评论(0编辑  收藏  举报