C# 将字符串转化成流,将流转换成字符串

using System;
using System.IO;
using System.Text;
namespace CSharpConvertString2Stream
{    
 class Program    
 {               
       static void Main( string[] args )
        {            
            string str = "Testing 1-2-3";             //convert string 2 stream            
            byte[] array = Encoding.ASCII.GetBytes(str);            
            MemoryStream stream = new MemoryStream(array);             //convert stream 2 string      
            StreamReader reader = new StreamReader(stream);
            string text = reader.ReadToEnd();
            Console.WriteLine(text); 
            Console.ReadLine(); 
       }  
  }
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#中,可以使用`System.IO.Compression`命名空间中的`GZipStream`类将字符串进行Gzip压缩,然后将压缩后的数据存入MySQL数据库中。以下是一个简单的示例代码: ```csharp using System; using System.IO; using System.IO.Compression; using MySql.Data.MySqlClient; class Program { static void Main(string[] args) { string inputString = new string('a', 2_000_000); // 生成一个长度为2M的字符串 // 压缩字符串 byte[] inputBytes = System.Text.Encoding.UTF8.GetBytes(inputString); byte[] compressedBytes; using (var outputStream = new MemoryStream()) { using (var gzipStream = new GZipStream(outputStream, CompressionMode.Compress)) { gzipStream.Write(inputBytes, 0, inputBytes.Length); } compressedBytes = outputStream.ToArray(); Console.WriteLine($"压缩后大小:{compressedBytes.Length}"); // 输出压缩后的大小 } // 存入MySQL数据库 string connectionString = "server=localhost;user=root;password=123456;database=test;"; using (var connection = new MySqlConnection(connectionString)) { connection.Open(); var command = connection.CreateCommand(); command.CommandText = "INSERT INTO `data` (`id`, `data`) VALUES (@id, @data)"; command.Parameters.AddWithValue("@id", 1); command.Parameters.AddWithValue("@data", compressedBytes); command.ExecuteNonQuery(); } } } ``` 在上面的代码中,我们首先生成一个长度为2M的字符串,然后使用`GZipStream`类进行压缩。在压缩时,我们创建一个输出`outputStream`,然后将其传递给`GZipStream`类的构造函数。在调用`Write`方法时,`GZipStream`类将压缩数据写入输出中。最后,我们将输出流转换为字节数组,并将其存储在`compressedBytes`变量中。 接下来,我们使用`MySqlConnection`类连接MySQL数据库,并将压缩后的数据存入`data`表中的`data`字段中。在存储时,我们使用参数化查询并将`compressedBytes`变量传递给参数`@data`。 值得注意的是,MySQL中的`BLOB`类型支持存储二进制数据,因此我们可以将压缩后的字节数组直接存入数据库中。在读取数据时,我们可以将其转换为字节数组,然后使用`GZipStream`类进行解压缩。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值