首页 > 解决方案 > 在 C# mysql 中读取 mediumblob

问题描述

我正在寻找从 mysql 数据库中读取 blob 文件并显示 blob 的“散列”段。

这是我尝试过的。

MySqlConnection _connection = new MySqlConnection("Database=forum;Data Source=localhost;User Id=root;Password=");
        MySqlCommand cmd = new MySqlCommand("SELECT data FROM xf_user_authenticate WHERE user_id=1", _connection);

        _connection.Open();

        MemoryStream ms = new MemoryStream();
        FileStream fs;
        Byte[] bindata;

        bindata = (byte[])(cmd.ExecuteScalar());

        ms.Write(bindata, 0, bindata.Length);

        API.consoleOutput($"{bindata.Length} - {bindata.ToString()}");

这输出到控制台,结果是

97 - 58

但这是我的 blob 的内容

a:1:{s:4:"hash";s:60:"$2y$10$myhashishere";}

标签: c#mysqlblob

解决方案


您的数据是 ascii 编码的字节数组,您可以使用

ASCIIEncoding.ASCII.GetChars(bindata)

推荐阅读