我们在日常的应用中,都会遇到这样一个问题,就是我们做的asp.NET程序,会收到其它第三方软件传过来的一些信息数据流,当然了一些文本形式的信息,可以采用get或post的方法来接收,可是要是传过来的是一些图片,或是其它一些流形式的数据怎么办呢.下面介绍二种方法,来接收,我接收的是传过来的XML文件
C#给我们提供了,二个接收流的方法.
第一种方法,是取byte
- int len = Request.TotalBytes;
- byte[] buffer = Request.BinaryRead(len);
- string path = "1.xml";
- FileStream fs = new FileStream(Server.MapPath(path), FileMode.Create, FileAccess.Write);
- BinaryWriter bw = new BinaryWriter(fs);
- bw.Write(buffer);
- bw.Close();
- fs.Close();
第二种方法,是取inputsteam
- byte[] buffer = new byte[Request.InputStream.Length];
- Request.InputStream.Read(buffer, 0, buffer.Length);
- string path = "1.xml";
- FileStream fs = new FileStream(Server.MapPath(path), FileMode.Create, FileAccess.Write);
- BinaryWriter bw = new BinaryWriter(fs);
- bw.Write(buffer);
- bw.Close();
- fs.Close();
这里我是为了做测试用,直接就把文件名给定死了1.xml,你可以采用日期随机数的方法来取名字.