使用C#将URL转换为Image的哈希码

时间:2016-02-17 13:23:47

标签: c# hashcode gethashcode getimagedata

对于我的项目,我需要将图像从Url转换为哈希码。喜欢" CE3222F5.jpg"。但我没有得到我应该在我的代码中实现Gethashcode方法的地方。我从url获取图像的代码是

Poi.Images = new List<string> { new WikiImage().GetImage(PoiName).Image };

使用此代码我得到了像这样的图像 -

"Images": [
"https://upload.wikimedia.org/wikipedia/commons/thumb/6/6b/Nordertor_im_Schnee_%28Flensburg%2C_Januar_2014%29.JPG/266px-Nordertor_im_Schnee_%28Flensburg%2C_Januar_2014%29.JPG"

但我希望以这种方式得到它 -

"Images": [
"CE3222F5.jpg"

我知道这个哈希码我需要使用

 var hash = uri.GetHashCode();
                var path = Path.Combine(Jpeg, hash.ToString("X") + ".jpg");

但我没有得到如何在我的代码中实现它。

2 个答案:

答案 0 :(得分:2)

要处理字符串列表,您可以使用Select

var images = new List<string>() { "http://www.example.com/image" };
var hashcodes = images.Select(t => string.Format("{0:X}.jpg", t.GetHashCode()));

答案 1 :(得分:0)

我不确定这个ImageInfo类提供了哪些方法,但是如果你可以将图像数据转换为字节数组,则可以将其转换为Base64字符串:

Convert.ToBase64String(_byte[] array)

Base64字符串可以安全地序列化为JSON。