C# - MemoryStream

RTF至二进制流转换
本文介绍了一个使用C#实现的简单示例,该示例演示了如何将Rich Text Format (RTF) 文档的内容转换为二进制流,并通过内存流分块读取这些数据。这一过程涉及到了文本的编码、内存流的使用以及数据的分块读取等关键技术点。

代码:

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 
10 //
11 using System.IO;
12 
13 namespace APPMemoryStream
14 {
15     public partial class Form1 : Form
16     {
17         public Form1()
18         {
19             InitializeComponent();
20         }
21 
22         private void Form1_Load(object sender, EventArgs e)
23         {
24 
25         }
26 
27         private void button1_Click(object sender, EventArgs e)
28         {
29             //将空间中的内容转换成二进制流
30             byte[] data = Encoding.Unicode.GetBytes(this.richTextBox1.Rtf);
31 
32             //将二进制文件存储到内存流
33             MemoryStream stream = new MemoryStream(data);
34 
35             //设置文件每块发送的长度
36             int sendlen = 1024;
37 
38             //获取整个文件的大小
39             long sunlen = (stream.Length);
40 
41             //设置文件发送的起始位置
42             int offset = 0;
43 
44             //分块获取信息
45             while (sunlen > 0)
46             {
47                 sendlen = 1024;
48 
49                 //如果文件没有读取完毕
50                 if (sunlen <= sendlen)
51                 {
52                     sendlen = Convert.ToInt32(sunlen);
53                 }
54 
55                 //创建一个1024大小的二进制流
56                 byte[] msgdate = new byte[sendlen];
57 
58                 //将字节块读取到内存流,以便于进行其他操作
59                 stream.Read(msgdate, offset, sendlen);
60 
61                 //记录下一块的起始位置
62                 sunlen = sunlen - sendlen;
63             }
64         }
65     }
66 }

 

转载于:https://www.cnblogs.com/KTblog/p/4515571.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值