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 ...
随机推荐
- Unity干中学——如何实现游戏截图?
using UnityEngine; using System.Collections; using System.IO; public class ScreenShot : MonoBehaviou ...
- bzoj 2152: 聪聪可可 树的点分治
2152: 聪聪可可 Time Limit: 3 Sec Memory Limit: 259 MBSubmit: 485 Solved: 251[Submit][Status] Descripti ...
- bzoj 1031: [JSOI2007]字符加密Cipher 後綴數組模板題
1031: [JSOI2007]字符加密Cipher Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 3157 Solved: 1233[Submit ...
- MVC自学系列之二(MVC控制器-Controllers)
Controllers的职责 1.MVC模式中的Controllers的职责是对用户的输入做出响应,对用户的输入在实体上做一些变化.它关心的是应用的流动,处理传入的数据,并给相关的View提供数据 ...
- LINUX TOP,不是这样玩地!!!
老同志遇到新问题了. TOP显示完全不是我要的,CPU,内存都是0.每个CPU还分别显示. 网上搜下,原来是A(显示风格)R(反向排序)P,M(CPU,内存排序)之类引起的. 记下了.
- truncate 空间不释放问题
SQL> set linesize 200 SQL> select segment_name, sum(bytes / 1024 / 1024/1024) from dba_segment ...
- 【HDOJ】2780 Su-Su-Sudoku
模拟+DFS. /* 2780 */ #include <cstdio> #include <cstring> #include <cstdlib> ][]; ][ ...
- .config-20150410
## Automatically generated file; DO NOT EDIT.# OpenWrt Configuration#CONFIG_MODULES=yCONFIG_HAVE_DOT ...
- [Exchange2013] 无法正常发送存入草稿箱 或者 只能发不能收
可能是由于你的域控的DNS设置导致: 1.那么首先我们添加一个EX的记录在域控的DNS里面 2.登录exchange的控制台,设置DNS Server
- vijosP1471 教主的游乐场
vijosP1471 教主的游乐场 链接:https://vijos.org/p/1471 [思路] 递推. 首先找到最左边的可以一步跳到后方的L, 那么L之后的点有两种情况:要么a足以跳到后方步数为 ...