我想将Embedded image转换为base 64字符串。该映像位于PCL解决方案中,所以让我知道如何将映像转换为base64。我尝试了很多方法,但没有正确获取文件路径。所以请帮我。
答案 0 :(得分:0)
//file to base64 string
byte[] b = System.IO.File.ReadAllBytes(FileName);
String s = Convert.ToBase64String(b);
//base64 string to file
byte[] data = Convert.FromBase64String(s);
System.IO.File.WriteAllBytes(FileName2, data);
答案 1 :(得分:0)
由于它是嵌入式资源,因此获取图像的路径是将其转换为流的问题,因此可以采取以下步骤来获取嵌入式图像的路径:
string imagePath = "NameOfProject.Assets.applicationIcon.png";
注意:这是您要提供的示例路径,其中项目名称是项目名称,Assets是我有图像的文件夹,应用程序图标是图像。 (希望您能理解我在这里所做的事情)
之后,获取大会详细信息,如下所示:
Assembly assembly = typeof(NameOfClass).GetTypeInfo().Assembly;
然后在using语句中将您的图像转换成流,类似
string result;
using (Stream stream = assembly.GetManifestResourceStream(imagePath))
{
long length = stream.Length;
byte[] buffer = new byte[length];
stream.Read(buffer, 0, (int)length);
result = Convert.ToBase64String(data);
}
在查询的情况下还原。