我有十六进制 FF676980(4 字节)的经度,我想将其转换为 c# 中的度数,我该怎么做?
问问题
617 次
1 回答
1
通常地理标签为 24 字节,但对于不需要精确位置的照片,通常使用 4 字节地理标签。因此,假设这是您的用例是很自然的,您应该#ve 只是阅读维基百科文章(https://en.wikipedia.org/wiki/Geotagging#Photographs)并接受它而不是询问。
无论如何继承你的代码:
public static (int D, int M, decimal S) Parse4ByteHexGeoTag(string hex)
{
var deg = Convert.ToInt(hex.SubString(0,2));
var time = Convert.ToDecimal(hex.SubString(3))/60m;
var min = (int)time;
var sec = (time%60)*60;
return (deg, min, sec);
}
请注意,您应该有一个枚举来指示它的 N 或 S、W 或 S,这取决于是否deg
为正。
于 2019-09-13T09:25:15.650 回答