当前位置:
首页 >
Stream 和Byte[] 之间的转换
发布时间:2025/4/14
49
豆豆
生活随笔
收集整理的这篇文章主要介绍了
Stream 和Byte[] 之间的转换
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
代码 1 //Stream 和Byte[]之间的转换
2 byte[] arr=new byte[stream.Length];//设定arr长度
3
4 stream.Read(arr,0,arr.Length);//stream从arr中读取数据
5
6 //提供表示流中的参考点以供进行查找的字段,设置当前流中的位置。
7 stream.Seek(0,SeekOrigin.Begin);
8
9 return arr;
10
11
12 //将byte[] 转换成Stream 利用内存
13 Stream stream=new MemoryStream(arr);
14 return stream;
15
16 /* - - - - - - - - - - - - - - - - - - - - - - - -
17 * Stream 和 文件之间的转换
18 * - - - - - - - - - - - - - - - - - - - - - - - */
19 /// <summary>
20 /// 将 Stream 写入文件
21 /// </summary>
22 public void StreamToFile(Stream stream,string fileName)
23 {
24 // 把 Stream 转换成 byte[]
25 byte[] bytes = new byte[stream.Length];
26 stream.Read(bytes, 0, bytes.Length);
27 // 设置当前流的位置为流的开始
28 stream.Seek(0, SeekOrigin.Begin);
29
30 // 把 byte[] 写入文件
31 FileStream fs = new FileStream(fileName, FileMode.Create);
32 BinaryWriter bw = new BinaryWriter(fs);
33 bw.Write(bytes);
34 bw.Close();
35 fs.Close();
36 }
37
38 /// <summary>
39 /// 从文件读取 Stream
40 /// </summary>
41 public Stream FileToStream(string fileName)
42 {
43 // 打开文件
44 FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);
45 // 读取文件的 byte[]
46 byte[] bytes = new byte[fileStream.Length];
47 fileStream.Read(bytes, 0, bytes.Length);
48 fileStream.Close();
49 // 把 byte[] 转换成 Stream
50 Stream stream = new MemoryStream(bytes);
51 return stream;
52 }
2 byte[] arr=new byte[stream.Length];//设定arr长度
3
4 stream.Read(arr,0,arr.Length);//stream从arr中读取数据
5
6 //提供表示流中的参考点以供进行查找的字段,设置当前流中的位置。
7 stream.Seek(0,SeekOrigin.Begin);
8
9 return arr;
10
11
12 //将byte[] 转换成Stream 利用内存
13 Stream stream=new MemoryStream(arr);
14 return stream;
15
16 /* - - - - - - - - - - - - - - - - - - - - - - - -
17 * Stream 和 文件之间的转换
18 * - - - - - - - - - - - - - - - - - - - - - - - */
19 /// <summary>
20 /// 将 Stream 写入文件
21 /// </summary>
22 public void StreamToFile(Stream stream,string fileName)
23 {
24 // 把 Stream 转换成 byte[]
25 byte[] bytes = new byte[stream.Length];
26 stream.Read(bytes, 0, bytes.Length);
27 // 设置当前流的位置为流的开始
28 stream.Seek(0, SeekOrigin.Begin);
29
30 // 把 byte[] 写入文件
31 FileStream fs = new FileStream(fileName, FileMode.Create);
32 BinaryWriter bw = new BinaryWriter(fs);
33 bw.Write(bytes);
34 bw.Close();
35 fs.Close();
36 }
37
38 /// <summary>
39 /// 从文件读取 Stream
40 /// </summary>
41 public Stream FileToStream(string fileName)
42 {
43 // 打开文件
44 FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);
45 // 读取文件的 byte[]
46 byte[] bytes = new byte[fileStream.Length];
47 fileStream.Read(bytes, 0, bytes.Length);
48 fileStream.Close();
49 // 把 byte[] 转换成 Stream
50 Stream stream = new MemoryStream(bytes);
51 return stream;
52 }
文章参考:http://www.cnblogs.com/anjou/archive/2007/12/07/986887.html?login=1#commentform ,在此对作者表示感谢!
转载于:https://www.cnblogs.com/angleSJW/archive/2010/07/13/1776678.html
总结
以上是生活随笔为你收集整理的Stream 和Byte[] 之间的转换的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 无聊,写写工作日记吧.
- 下一篇: capistrano部署ruby on