将字符串转换为SQL

时间:2015-10-27 14:16:14

标签: c# sql asp.net image

在我的sql表中,我有一个表示图像的varchar。 字符串如下所示:

255 216 255 224 0 16 74 70 73 70 0 1 1 1 0 96 0 96 0 0 255 219 0 67 ...

保存为.txt,大小约为20KB。

第一个问题:这是什么类型的字符串?我无法在网上找到任何东西。在我看来像RGB值,因为255是那里的最高数字。

如何使用C#(精确的ASP.net MVC)将此字符串格式再次转换为实际图像?

谢谢。

更新

与开发者交谈:

图像从 Active Directory thumbnailPhoto 属性中提取并存储为字符串。也许最好转换源代替。

1 个答案:

答案 0 :(得分:2)

您需要知道编码。作为一个例子,这里是我如何将二进制字符串解码为tiff图像:

    private static BlockUIContainer ConvertBinaryToImageUIContainer(string binary)
    {
        byte[] binaryData = Convert.FromBase64String(binary);
        BitmapImage bitmapImage = new BitmapImage();
        bitmapImage.BeginInit();
        bitmapImage.StreamSource = new MemoryStream(binaryData);
        bitmapImage.EndInit();
        BlockUIContainer container = new BlockUIContainer();
        container.Child = new System.Windows.Controls.Image { Source = bitmapImage };
        return container;
    }

取二进制字符串并根据编码将其转换为byte。就我而言,它是Base64String。创建新图像并创建memorystream作为源。我可以选择在BlockUIContainer中设置我的WPF应用程序,但您可以按照自己的意愿使用bitmapImagebyte[]数据。希望这会有所帮助。