C# 使用 MemoryStream 将数据写入内存
2024-09-04 17:16:46
转自:http://blog.csdn.net/andrew_wx/article/details/6629951
常用的MemoryStream构造函数有以下3种。
1:MemoryStream() 该构造函数初始分配容量大小为0字节,随着数据的不断写入,其容量可以不断的自动扩展。一般在不确定数据内容大小的时候应用这种形式。
2:MemoryStream(byte[]) 和 MemoryStream 的无参数构造函数不同,通过该构造数的 MemoryStream 实例根据 byte 类型的字节数组进行初始化,并且实例的容量大小固定为字节数组的长度。由于实例的容量不能扩展,该构造函数一般用于数据不发生变化的场合。
3:MemoryStream(int capacity) 通过该构造函数创建初始容量大小为 capacity 的实例。并且实例容量大小可扩展。
完整代码如下:
引入命名空间:
- using System.IO;
完整代码:
- namespace MemoryStreamApp
- {
- class Program
- {
- static void Main(string[] args)
- {
- //构造MemoryStream实例,并输出初始分配容量及使用大小
- MemoryStream mem = new MemoryStream();
- Console.WriteLine("初始分配容量:{0}" , mem.Capacity);
- Console.WriteLine("初始使用量:{0}" , mem.Length);
- //将待写入的数据从字符串转换为字节数组
- UnicodeEncoding encoder = new UnicodeEncoding();
- byte[] bytes = encoder.GetBytes("新增数据");
- //向内存流中写入数据
- for (int i = 1; i < 4; i++)
- {
- Console.WriteLine("第{0}次写入新数据", i);
- mem.Write(bytes, 0, bytes.Length);
- }
- //写入数据后 MemoryStream 实例的容量和使用大小
- Console.WriteLine("当前分配容量:{0}",mem.Capacity);
- Console.WriteLine("当前使用量:{0}",mem.Length);
- Console.ReadLine();
- }
- }
- }
该程序运行效果:
若以上代码无法正常编译,可下载鄙人上传的项目文件:http://download.csdn.net/source/3465990
最新文章
- 使用FTP FtpWebRequest UsePassive 属性实现主动上传
- Java基础一
- static静态结合&;符号理解
- hdu5536 字典树xor
- js原型和构造函数混合模式
- POJ 3469 Dual Core CPU (最小割建模)
- avalonjs1.5 入门教程
- Unity 4.5.2 for Mac 下载+安装+破解
- iphone/ipad/iOS on Linux Debian7/ubuntu12.04/linuxmint13/ubuntu14.04 compiling from source
- delphi TServerSocket的多线程
- zookeeper的集群介绍、搭建、环境、安装
- Chipmunk僵尸物理对象的出现和解决(二)
- luogu P2962 [USACO09NOV]灯Lights 高斯消元
- Git版本控制工具的简单使用
- HTML中--定义header和footer高度中间自适应
- mysql 对表字段进行长度截取操作
- JSON调试找不到 net.sf.ezmorph.Morpher
- ios之block笔记
- python编码(三)
- 【week9】psp
热门文章
- 【解决】无法连接 MKS:套接字连接尝试次数太多正在放弃
- 【Selenium + Python】之如何获取最新的报告以及os.path.getmtime与os.path.getctime的区别
- JQ动态获取数据
- 在安装ubuntu时,卡在启动画面
- Docker基础原理
- 【BZOJ1316】树上的询问 点分治+set
- 【BZOJ4012】[HNOI2015]开店 动态树分治+二分
- Filebeat+ELK
- windows系统下nodejs、npm、express的下载和安装教程——2016.11.09
- 【题解】Greatest Common Increasing Subsequence