`
ljl_xyf
  • 浏览: 636004 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

C# Stream 和 byte[] 之间的转换

    博客分类:
  • c#
阅读更多

-
-
/* - - - - - - - - - - - - - - - - - - - - - - - -
* Stream 和 byte[] 之间的转换
* - - - - - - - - - - - - - - - - - - - - - - - */

/// <summary>
/// 将 Stream 转成 byte[]
/// </summary>
public byte[] StreamToBytes(Stream stream)
{
byte[] bytes = new byte[stream.Length];
stream.Read(bytes, 0, bytes.Length);
// 设置当前流的位置为流的开始
stream.Seek(0, SeekOrigin.Begin);
return bytes;
}
/// <summary>
/// 将 byte[] 转成 Stream
/// </summary>
public Stream BytesToStream(byte[] bytes)
{
Stream stream = new MemoryStream(bytes);
return stream;
} 
 



/* - - - - - - - - - - - - - - - - - - - - - - - -
* Stream 和 文件之间的转换
* - - - - - - - - - - - - - - - - - - - - - - - */

/// <summary>
/// 将 Stream 写入文件
/// </summary>
public void StreamToFile(Stream stream,string fileName)
{
// 把 Stream 转换成 byte[]
byte[] bytes = new byte[stream.Length];
stream.Read(bytes, 0, bytes.Length);
// 设置当前流的位置为流的开始
stream.Seek(0, SeekOrigin.Begin);
// 把 byte[] 写入文件
FileStream fs = new FileStream(fileName, FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
bw.Write(bytes);
bw.Close();
fs.Close();
}
/// <summary>
/// 从文件读取 Stream
/// </summary>
public Stream FileToStream(string fileName)
{
// 打开文件
FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);
// 读取文件的 byte[]
byte[] bytes = new byte[fileStream.Length];
fileStream.Read(bytes, 0, bytes.Length);
fileStream.Close();
// 把 byte[] 转换成 Stream
Stream stream = new MemoryStream(bytes);
return stream;
} 
 

 

分享到:
评论

相关推荐

    C#中bitmap、stream、byte类型转换实例

    以上就是C#中Bitmap、Stream和byte[]类型转换的详细过程。在实际应用中,你可能需要根据具体需求调整代码,比如处理不同格式的图像或优化性能。在处理大图片时,要特别注意内存使用,因为这些转换可能会占用大量内存...

    C#实现Stream与byte[]之间的转换实例教程

    本文以实例形式详细介绍了C#实现Stream与byte[]之间的转换的方法,分享给大家供大家参考之用。具体方法如下: 一、二进制转换成图片 MemoryStream ms = new MemoryStream(bytes); ms.Position = 0; Image img = ...

    c#实现object与byte[]互转

    在C#中,实现object与byte[]互转是一种常见的需求,特别是在网络通信和数据存储中。这篇文章将详细介绍如何将object转换为byte[],并介绍相关的知识点。 序列化 序列化是将对象转换为二进制数组的过程。C#提供了...

    C# 图片转成byte存入,数据库读取byte转成图片的类

    以上就是C#中处理图片与byte数组之间转换、存储和显示的完整流程。在实际项目中,你可能需要考虑异常处理、数据库连接管理、性能优化等问题。例如,对于大量图片存储,可能需要分批处理,或者考虑使用更高效的数据...

    [C#]image与byte数组的转换

    在C#编程中,图像(Image)与字节(Byte)数组之间的转换是常见的操作之一,尤其是在处理图像数据、网络传输或存储时尤为常见。本文将详细介绍如何在C#中实现图像与字节数组之间的相互转换,并提供具体的代码示例。 ...

    C#将图片和字节流互相转换并显示到页面上

    C#将图片和字节流相互转换代码: usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Drawing; usingSystem.IO; namespaceMicrosoft.Form.Base { classImageToByte {...

    DataSet 与Byte[]之间的相互转换

    本篇将详细讲解如何在`DataSet`与`Byte[]`之间进行转换,并涉及数据压缩的相关知识。 1. `DataSet`转`Byte[]`: 当我们需要将`DataSet`的内容保存到磁盘或者通过网络发送时,可以将其转换为`Byte[]`。这通常通过...

    C# 字符串string和内存流MemoryStream及比特数组byte[]之间相互转换

    本文将详细探讨如何在字符串(string)、内存流(MemoryStream)和比特数组(byte[])之间进行转换,这对于数据存储、网络传输或者序列化/反序列化等场景非常有用。 1. **字符串转比特数组**: - `System.Text.Encoding....

    C# byte数组与Image相互转换的方法

    在C#编程中,处理图像数据时经常需要将图片转换为byte数组,以便于存储到数据库或在网络上传输。反之,从数据库中读取到byte数组后,也需要将其转换回Image对象进行显示或进一步处理。这里我们将详细探讨如何实现C#...

    C#实现把图片转换成二进制以及把二进制转换成图片的方法示例

    在C#中,可以使用MemoryStream和Image.FromStream将二进制数组转换成图片。具体实现代码如下: ```csharp public void ShowImgByByte(byte[] imgBytesIn) { MemoryStream ms = new MemoryStream(imgBytesIn); ...

    C#, byte operation

    2. `BitConverter`类:C# 提供了`System.BitConverter`类,用于在字节序列和基本类型之间进行转换。例如,我们可以用它将`int`转换为字节数组,反之亦然,这对于处理二进制数据非常有用。 3. `Stream`类:在处理...

    详谈C# 图片与byte[]之间以及byte[]与string之间的转换

    在C#编程中,数据类型之间的转换是常见的操作,特别是在处理图像、二进制数据和字符串时。本文将深入探讨如何在C#中实现图片(Image类型)与字节数组(byte[]类型)以及字节数组与字符串(string类型)之间的转换。 ...

    文字转成byte[],再转成string加密,再解密转成byte[] C#

    在C#编程中,将文字转换为`byte[]`,然后进行加密,解密后再转换回文字,是一种常见的数据安全处理方法。这种方法主要用于在网络传输中保护数据,防止数据被未经授权的第三方截取和解读,从而提高安全性。下面将详细...

    C# FileStream 分段读取文本内容

    在C#编程中,`FileStream`是`System.IO`命名空间中的一个类,它用于读取和写入文件。这个类提供了对文件的低级访问,允许开发者按字节流处理文件。`FileStream`是`Stream`类的一个具体实现,`Stream`类是所有输入/...

    C#中二进制数组转换,二进制序列化和json序列化方法

    本篇将深入探讨如何在C#中进行二进制数组与常规数组之间的转换,以及二进制序列化和JSON序列化的应用及其反序列化过程。 首先,让我们来看看二进制数组与常规数组之间的转换。在C#中,二进制数组通常用byte[]表示,...

    C#,BLOB读取操作

    6. 图片转换:使用 Image.FromStream 方法可以将图片数据转换为 Image 对象。 在实际应用中,BLOB 读取操作可以用于各种场景,例如: * 图片上传和下载:在 Web 应用程序中,用户可以上传图片,服务器端可以将图片...

    一个基于C# 实现的Image与Byte Array进行相互转换的Class类库源码及例子程序

    本篇将详细介绍如何使用C#实现Image与Byte Array之间的转换,并基于提供的类库源码进行解析。 首先,`ImageConverter.cs` 文件很可能包含了实现这两个转换的核心代码。在这个类库中,通常会有一个名为 `...

Global site tag (gtag.js) - Google Analytics