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 ...
随机推荐
- LightOj_1104 Birthday Paradox
题目链接 题意: 若一年有n天, 问至少需要多少个人才能满足其中两个人生日相同的概率大于等于0.5? 思路: 经典问题:生日悖论 换成其互斥事件:m个人, 每个人生日都不相同的概率 ≤ 0.5 时最小 ...
- 完美解决 Phonegap jQeuryMobile 闪屏 问题
在切换page或者弹出dialog时,会出现闪屏情况,综合网络上各种方法,得出以下方法可完美解决: 1.首先界面页面切换闪屏: 在加载jQuery后,加载jQuery Mobiel之前,插入js语句进 ...
- ios7新特性2--多任务提升
iOS 7 为应用程序提供新的后台执行模式: 应用程序需要需要下载新内容,可以向系统注册,这样程序会被定期唤起或者启动,然后可以在后台下载内容.要注册这个功能,需要打开Info.plist 文件,设置 ...
- nodejs广播
http://site.douban.com/185124/widget/notes/10805558/note/240909343/ http://t42dw.iteye.com/blog/1767 ...
- WITH AS and materialize hints
WITH AS: 就是将一个子查询部分独立出来,有时候是为了提高SQL语句的可读性,有时候是为了提高SQL语句性能. 如果一个SQL语句中,某个表会被访问多次,而且每次访问的限制条件一样的话,就可以使 ...
- .net 开源项目
.NET开发人员值得关注的七个开源项目 [IT168技术分析]微软近几年在.NET社区开源项目方面投入了相当多的时间和资源,不禁让原本对峙的开源社区阵营大吃一惊,从微软.NET社区中的反应来看,微软. ...
- VM Depot 镜像新增系列II – 学习管理系统,内容管理系统以及平台管理工具
发布于 2014-06-23 作者 刘 天栋 继上周企业管理软件和电子商务镜像的加盟之后,我们看到又有一批内容管理解决方案(CMS),学习管理解决方案(LMS)以及平台管理工具 (如 Open ...
- 硬盘安装RedHat Enterprise Linux 6(转载)
准备条件: (1)RedHat Enterprise Linux 6安装镜像 下载见文章末尾 (2)grub文件(用于引导安装) ...
- Nginx缓存配置及nginx ngx_cache_purge模块的使用
ngx_cache_purge模块的作用:用于清除指定url的缓存 下载地址:http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz 1. ...
- Google Map API学习1
这一段时间公司一个新产品上线, 做超市代购的 这样,就需要计算每个门店也就是超市,距离小区之间的距离. 我们用的是Google Map 1.批量对地址进行编码,也就是将地址批量转化成对应的Goole ...