C# 图片EXIF标签中的汉字编码?
我有一个程序可以写入图片的EXIF标签,在遇到一些汉字之前,一切正常。根据标签的不同,它要么工作正常,要么不工作C# 图片EXIF标签中的汉字编码?,c#,image,encoding,exif,C#,Image,Encoding,Exif,我有一个程序可以写入图片的EXIF标签,在遇到一些汉字之前,一切正常。根据标签的不同,它要么工作正常,要么不工作 using (var file = Image.FromFile(tempPath)){ // Works fine with Chinese characters var propTitle = file.PropertyItems[0]; propTitle.Id = 0x010E;
using (var file = Image.FromFile(tempPath)){
// Works fine with Chinese characters
var propTitle = file.PropertyItems[0];
propTitle.Id = 0x010E;
propTitle.Type = 2;
propTitle.Value = Encoding.UTF8.GetBytes($"{title}\0");
propTitle.Len = propTitle.Value.Length;
file.SetPropertyItem(propTitle);
// Doesn't work
var propTags = file.PropertyItems[0];
propTags.Id = 0x9286;
propTags.Type = 2;
propTags.Value = Encoding.UTF8.GetBytes($"{tags}\0");
propTags.Len = propTags.Value.Length;
file.SetPropertyItem(propTags);
file.Save(finalPath);}
当我在Windows中检查标记时,最后一个标记(用于用户评论)显示为:
俎俎›俎;城市;高楼大厦;ä¸å›½å°æ¹¾;夜晚的景观;
而其他标记(如标题)显示良好:
夜晚
但如果我将同一字符串保存到另一个标记中,它将在Windows资源管理器中正常显示:
高雄;城市;高楼大厦;中国台湾;夜晚的景观;
我曾经认为用户评论标签不能正确处理中文字符,但我可以手动将它们添加到文件中,效果很好
我做错了什么