asp.net接收传入的数据流

我们在日常的应用中,都会遇到这样一个问题,就是我们做的asp.NET程序,会收到其它第三方软件传过来的一些信息数据流,当然了一些文本形式的信息,可以采用get或post的方法来接收,可是要是传过来的是一些图片,或是其它一些流形式的数据怎么办呢.下面介绍二种方法,来接收,我接收的是传过来的XML文件

   C#给我们提供了,二个接收流的方法.

   第一种方法,是取byte

   

[csharp] view plain copy
 
  1. int len = Request.TotalBytes;  
  2.                 byte[] buffer = Request.BinaryRead(len);  
  3.   
  4.                   
  5.   
  6.                   
  7.   
  8.                 string path = "1.xml";  
  9.   
  10.                 FileStream fs = new FileStream(Server.MapPath(path), FileMode.Create, FileAccess.Write);  
  11.   
  12.                 BinaryWriter bw = new BinaryWriter(fs);  
  13.   
  14.                   
  15.   
  16.                 bw.Write(buffer);  
  17.                   
  18.                 bw.Close();  
  19.                 fs.Close();  


   第二种方法,是取inputsteam

 

       

[csharp] view plain copy
 
  1. byte[] buffer = new byte[Request.InputStream.Length];  
  2.   
  3.                Request.InputStream.Read(buffer, 0, buffer.Length);  
  4.   
  5.                  
  6.   
  7.                string path = "1.xml";  
  8.   
  9.                FileStream fs = new FileStream(Server.MapPath(path), FileMode.Create, FileAccess.Write);  
  10.   
  11.                BinaryWriter bw = new BinaryWriter(fs);  
  12.   
  13.                  
  14.   
  15.                bw.Write(buffer);  
  16.                  
  17.                bw.Close();  
  18.                fs.Close();  


   这里我是为了做测试用,直接就把文件名给定死了1.xml,你可以采用日期随机数的方法来取名字.

posted @   littlewrong  阅读(437)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示