图片上载和下载 转换成数据流

************************************
**上传文件并返回服务器上的文件名
**<param name="bytes">字节流</param>
**<param name="fileName">客户端的文件名</param>
**<param name="optFilePath">文件存放的服务器路径</param> 
 ** <returns>服务器上的文件名</returns>
************************************
  [AutoComplete]
  public string LoadupFile(byte[] bytes, string fileName, optFilePath)
  {
   BS.BLM.Option option=new BS.BLM.Option();
   string uriString = @option.OptionVal(optFilePath);
   if(uriString.EndsWith("//") == false) uriString = uriString + "//";
            string fileNameExt = fileName.Substring(fileName.LastIndexOf(".") + 1);
      DateTime dt = DateTime.Now;
   string strDateTime = dt.ToString("yyMMddHHmmss");
   string strMilsecond = dt.Millisecond.ToString();
   fileName =  strDateTime + strMilsecond + "." + fileNameExt;                
   uriString = uriString + fileName;

   try
   {
    WebClient myWebClient = new WebClient();
    myWebClient.Credentials = CredentialCache.DefaultCredentials;

    Stream postStream = myWebClient.OpenWrite(uriString,"PUT");
    if(postStream.CanWrite)
    {  
     postStream.Write(bytes,0,bytes.Length);
    }
    else
    {
     throw new Exception("文件目前不可写.");
    }
    postStream.Close();
   }
   catch(WebException we)
   {
       throw new Exception(we.Message);
   }
   return fileName;
  }

****************************
**文件下载转成字节流
**<param name="fileName">服务器上的文件名</param> 
** <param name="optFilePath">文件存放的服务器路径</param> 
 **<returns>字节流</returns>
****************************
  [AutoComplete]
  public byte[] DownLoadFile(string  fileName, IPMS.EnmOption optFilePath)
  {
   BS.BLM.Option option=new BS.BLM.Option();
   string uriString = @option.OptionVal(optFilePath);
   string fileFullName = uriString + "//" + fileName.Trim();
   if(!File.Exists(fileFullName))
   {
    return null;
   }
   else
   {
    **得到服务器上要下载的文件流
    FileStream fs = new FileStream(fileFullName, FileMode.Open, FileAccess.Read);
    BinaryReader r = new BinaryReader(fs);
    byte[] postArray = r.ReadBytes((int)fs.Length);
    return postArray;
   }
  }
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值