图像流到 WP7 中的 base64 字符串



在我的WP7应用程序中,我正在从媒体库中选择图像,我想获取该图像的Base64字符串,因为我将其发送到我的WCF服务以在服务器上创建图像。 获取 base64 字符串的代码如下所示:

void taskToChoosePhoto_Completed(object sender, PhotoResult e)
{
    if (e.TaskResult == TaskResult.OK)
    {
        fileName = e.OriginalFileName;
        selectedPhoto = PictureDecoder.DecodeJpeg(e.ChosenPhoto);
        imgSelected.Source = selectedPhoto;
        int[] p = selectedPhoto.Pixels;
        int len = p.Length * 4;
        result = new byte[len]; // ARGB
        Buffer.BlockCopy(p, 0, result, 0, len);
        base64 = System.Convert.ToBase64String(result);
    }
}  

但是在服务器上,此代码创建图像文件,但格式无效。我交叉验证了 base64 字符串,但我认为应用程序给出了错误的 base64string 可能是原因,请帮助找出问题。

您正在服务器上发送 base64 编码的像素。我不确定这是你需要的。如何将Stream转换为 base64 字符串?

var memoryStream = new MemoryStream();
e.ChosenPhoto.CopyTo(memoryStream);
byte[] result = memoryStream.ToArray();
base64 = System.Convert.ToBase64String(result);

最新更新