java - 如何在java中将度分秒转换为小数

标签 java

这是一个基本的 gps 应用程序,我从 28"41'44.13597 格式的图片的元数据中获取纬度信息。

我需要将相同的信息转换为十进制,输出将以十进制格式显示数据,如 28.705450。

请通过代码或任何引用提供帮助

提前致谢

最佳答案

/** answer=hour+minutes/60+seconds/3600 */
public double convertHourToDecimal(String degree) { 
    if(!degree.matches("(-)?[0-6][0-9]\"[0-6][0-9]\'[0-6][0-9](.[0-9]{1,5})?")
        throw new IllegalArgumentException();
    String[] strArray=degree.split("[\"']");
    return Double.parseDouble(strArray[0])+Double.parseDouble(strArray[1])/60+Double.parseDouble(strArray[2])/3600;
}

关于java - 如何在java中将度分秒转换为小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2779405/

相关文章:

java - 复制 ArrayList

java ssl套接字服务器握手中止

java - 使用现有 TextView 设计以编程方式在另一个 TextView 下方显示 TextView

java - 无法使用 jsp 文件名作为 RequestMapping 值解析 WEB-INF/文件夹内的 View

java - 有没有办法自动将jOOQ记录映射到Java记录?

java - 从并行流中捕获异常

java - Maven java 项目构建,但不运行

java - 如何为junit编写通用的tearDown方法?

java - 将来自已知时区的时间戳转换为系统时区

java - 在 Spring 集成中将字符串对象发送到休息服务时 ConverterNotFoundException