我正在从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


但这是我的一斑的内容

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

最佳答案

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

ASCIIEncoding.ASCII.GetChars(bindata)

10-02 07:52