Stream流的读取使用
这个是在现在的项目里,用到的知识点,一般用不到这些。。所以想着还是记下来以后用。
针对文本流
//StreamReader sr = new StreamReader(mystream,Encoding.UTF8);
//string logstream = sr.ReadToEnd();
针对图片流
Image.FromStream(stream);
下面的是一个公司项目里的范例是针对文本和图片拼在一起的一个流
//FileStream用于写入文件
FileStream fs = new FileStream(imgpath, FileMode.CreateNew); BinaryWriter w = new BinaryWriter(fs);
// 设置要写入的偏移量
Stream mystream = wresp.GetResponseStream();
byte[] tempOneByte = new byte[];
byte[] temp1024Byte = new byte[]; int readLength = mystream.Read(tempOneByte, , );
bool beginSave = false;
while (readLength != )
{
if (tempOneByte[] == && !beginSave)
{
mystream.Read(tempOneByte, , );
if (tempOneByte[] == )
{
int iValue = ;
tempOneByte[] = (byte)iValue;
beginSave = true;
fs.Write(tempOneByte, , );
fs.Flush();
iValue = ;
tempOneByte[] = (byte)iValue;
fs.Write(tempOneByte, , );
fs.Flush();
readLength = mystream.Read(temp1024Byte, , );
continue;
}
}
writeLength += readLength;
if (beginSave)
{
fs.Write(temp1024Byte, , readLength);
fs.Flush();
}
else
{
byteArray.Add(tempOneByte[]);
}
if (beginSave)
readLength = mystream.Read(temp1024Byte, , );
else
readLength = mystream.Read(tempOneByte, , );
}
w.Close();
fs.Close(); byte[] resultbyte = new byte[byteArray.Count];
for (int i = ; i < byteArray.Count; i++)
{
resultbyte[i] = (Byte)byteArray[i];
}
System.Text.UTF8Encoding UTF8 = new System.Text.UTF8Encoding();
result = UTF8.GetString(resultbyte);
Stream流的读取使用的更多相关文章
- stream流批量读取并合并文件
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.F ...
- java使用stream流批量读取并合并文件,避免File相关类导致单文件过大造成的内存溢出。
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.F ...
- Stream 流操作
Stream 类 先看下面的图 Stream 是所有流的抽象基类(不能被实例化,需要使用他的派生类FileStream/MemoryStream/BufferedStream).流是字节序列的抽象概 ...
- Node.js Stream(流)
Stream 是一个抽象接口,Node 中有很多对象实现了这个接口.例如,对http 服务器发起请求的request 对象就是一个 Stream,还有stdout(标准输出). Node.js,Str ...
- NodeJS Stream流
NodeJS Stream流 流数据在网络通信中至关重要,nodeJS用Stream提供了一个抽象接口,node中有很多对象实现了这个接口,提供统一的操作体验 基本流类型 NodeJS中,Stream ...
- node.js中stream流中可读流和可写流的使用
node.js中的流 stream 是处理流式数据的抽象接口.node.js 提供了很多流对象,像http中的request和response,和 process.stdout 都是流的实例. 流可以 ...
- node api 之:stream - 流
stream 模块可以通过以下方式使用: const stream = require('stream'); 流可以是可读的.可写的.或者可读可写的. 所有的流都是 EventEmitter 的实例. ...
- java mysql大数据量批量插入与流式读取分析
总结下这周帮助客户解决报表生成操作的mysql 驱动的使用上的一些问题,与解决方案.由于生成报表逻辑要从数据库读取大量数据并在内存中加工处理后在 生成大量的汇总数据然后写入到数据库.基本流程是 读取- ...
- 【node.js】Stream(流)
Stream 有四种流类型: Readable - 可读操作. Writable - 可写操作. Duplex - 可读可写操作. Transform - 操作被写入数据,然后读出结果. 所有的 St ...
随机推荐
- BZOJ 1003 物流运输trans
Description 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格 ...
- 【POJ1082】Calendar Game (博弈)
[题目] Description Adam and Eve enter this year's ACM International Collegiate Programming Contest. La ...
- MFC 仿QQ聊天软件(黄花寒)
http://blog.csdn.net/lh844386434/article/details/6655080 http://download.csdn.net/download/lh8443864 ...
- 14.5.5.3 How to Minimize and Handle Deadlocks 如何减少和处理死锁
14.5.5.3 How to Minimize and Handle Deadlocks 如何减少和处理死锁 这个部分建立在概念信息关于deadlocks 在章节 14.5.5.2, "D ...
- Duplex Service in WCF(CodeProject上的)
Duplex Service in WCF In WCF, a service can call back to its clients. That is to say that, at the ti ...
- BZOJ1135: [POI2009]Lyz
1135: [POI2009]Lyz Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 264 Solved: 106[Submit][Status] ...
- 【转】linux 中dd命令使用详解
原文网址:http://xiaozhuang.blog.51cto.com/4396589/850657 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究 ...
- JAVA中IO技术:BIO、NIO、AIO
1.同步异步.阻塞非阻塞概念 同步和异步是针对应用程序和内核的交互而言的. 阻塞和非阻塞是针对于进程在访问数据的时候,根据IO操作的就绪状态来采取的不同方式,说白了是一种读取或者写入操作 ...
- Delphi ADOQuery的速度优化 转
今天终于把纠缠了几天的问题改完了,说到底只是一个很小的问题,就是ADOQuery的一个小属性. 把控件DBGridEh的一列的checkbox设为true,将其绑定DataSourceA和DOQu ...
- Web Service和ISAPI的区别与联系 转
Web Service和ISAPI的区别与联系 1.Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service ...