第三百五十一回

文章目录

  • 1. 概念介绍
  • 2. 获取方法
  • 3. 示例代码
  • 4. 对比与总结
    • 4.1 横向对比
    • 4.2 内容总结

我们在上一章回中介绍了"如何获取当前系统语言"相关的内容,本章回中将介绍获取当前时区.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们使用的北京时间也叫CST,不过它不是国际标准时间,国际标准时间为UTC,我们国家位于东八区,因此也用UTC+8来表示北京时间。不过这种表示方式有时候不够直
观,需要我们查阅时区后才能知道。我们在本章回中介绍的时区主要是时区的标志,比如我们常用的北京时间的时区标志是Asia/Shanghai,从名字上就能直观地看到当
前时区所处于的地理位置。本章回中将介绍如何获取这种时区标志。
timezone
两个包都可以获取

2. 获取方法

我们可以使用dart中的DateTime类来获取时区,具体代码为:DateTime.now().timeZoneName,不它获取到的是cst,utc这样的时区,而不是我们想的带有城市
名称的时区标志。我查阅了DateTime类的所有接口,没有找到可以获取到时区标志的方法。于是只好在pub中查找功夫不负有心人,终于找到了一个可以获取时区标志
的三方包:flutter_timezone,通过包中的getLocalTimezone()方法可以获取当前的时区标志。

3. 示例代码

var timeZone = FlutterTimezone.getLocalTimezone().then((value){debugPrint("future timeZone: ${value.toString()}");
});void getTimeZone () async {///获取时区,输出:async timeZone: Asia/Shanghaivar value = await FlutterTimezone.getLocalTimezone();debugPrint("async timeZone: ${value.toString()}");
}

我们在上面的示例代码中演示了两个获取时区标志的方法,它们都使用了异步的方法去获取到时区标志,只是表现形式不同而已。

4. 对比与总结

4.1 横向对比

与Java中的时间类相比,dart中的时间类功能比较少,比如本章回中获取时区标志还需要借助三方包来实现。其实在Java8之前的时间类也不是很好用,直到Java8才
对时间类有了比较大的更新。我预测dart在未来的版本中还会对时间类做更新。此外,我们虽然通过三方包获取到时区标志了,但是需要通过异步的方式来获取,我感觉
时区完全可以通过当前时间计算出来,为什么要做成异步的机制?使用起来十分不方便,对比一下Java中的时间类,可以直接获取到时区标记。

4.2 内容总结

最后,我们对本章回中的内容做一个全面的总结:

  • 使用DateTiem类可以获取到时区名称,比如utc,cst;
  • 使用三方包flutter_timezone可以获取时区标志;
  • 获取时间标志时需要使用异步的方式,不然无法获取到时区标志;
    看官们,与"如何获取当前时区"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/474756.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端面试必备八股文——HTMLCSS

HTML src和href的区别 src和href都是用来加载外部资源,区别如下 src当浏览器解析到该元素时,会暂停其他资源的加载和处理,直到该资源加载完成。 它会将资源内容嵌入到当前标签所在的位置,将其指向的资源下载应用到文档内&#…

WebServer 之 http连接处理(下)

目录 ✊请求报文--解析 流程图 && 状态机 状态机 -- 状态转移图 主状态机 从状态机 http 报文解析 HTTP_CODE 含义 从状态机 逻辑 主状态机 逻辑 🐞请求报文--响应 基础API stat mmap iovec writev 流程图 HTTP_CODE 含义(2) 代码分析 …

C语言学习day16:二维数组

二维数组格式: 数据类型 数组名[行][列] { {值1,值2}, {值3,值4} } 代码: int arr[2][3] { {1,2,3},{4,5,6} }; 那么我们怎么找它的下标呢,我先上一副图: 假如我现在要找1,那么它…

JWT和base64

1.1 jwt和token 1.1.1 token介绍 令牌(Token):在计算机领域,令牌是一种代表某种访问权限或身份认证信息的令牌。它可以是一串随机生成的字符或数字,用于验证用户的身份或授权用户对特定资源的访问。 简单理解 : 每个…

vue-路由(六)

阅读文章你可以收获什么? 1 明白什么是单页应用 2 知道vue中的路由是什么 3 知道如何使用vueRouter这个路由插件 4 知道如何如何封装路由组件 5 知道vue中的声明式导航router-link的用法 6 知道vue中的编程式导航的使用 7 知道声明式导航和编程式导航式如何传…

Java实现新能源电池回收系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户档案模块2.2 电池品类模块2.3 回收机构模块2.4 电池订单模块2.5 客服咨询模块 三、系统设计3.1 用例设计3.2 业务流程设计3.3 E-R 图设计 四、系统展示五、核心代码5.1 增改电池类型5.2 查询电池品类5.3 查询电池回…

BUGKU-WEB source

题目描述 题目截图如下: 进入场景看看: 解题思路 看源码,看F12网络请求没有东西只能老老实实按照提示用Linux去扫描目录 相关工具 kali虚拟机安装gobuster 或者dirsearch 解题步骤 先查看源码: flag{Zmxhz19ub3RfaGvyzS…

jwt+redis实现登录认证

项目环境&#xff1a;spring boot项目 pom.xml引入jwt和redis <!-- jwt --><dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>4.3.0</version></dependency><!-- redis坐标-->…

机器学习面试:逻辑回归与朴素贝叶斯区别

逻辑回归与朴素贝叶斯区别有以下几个方面: (1)逻辑回归是判别模型&#xff0c;朴素贝叶斯是生成模型&#xff0c;所以生成和判别的所有区别它们都有。 (2)朴素贝叶斯属于贝叶斯&#xff0c;逻辑回归是最大似然&#xff0c;两种概率哲学间的区别。 (3)朴素贝叶斯需要条件独立假设…

[java基础揉碎]方法的调用机制 方法使用的细节 方法的递归调用 方法的可变参数​

目录 方法的调用机制 方法使用的细节 方法的递归调用 方法的可变参数​编辑​编辑 方法的调用机制 方法使用的细节 访问修饰符&#xff08;作用是控制方法使用的范围&#xff09; 如果不写默认访问&#xff0c;[有四种&#xff1a;public,protected,默认&#xff0c;priv…

FLUENT Meshing Watertight Geometry工作流入门 - 8 添加边界层网格

本视频中学到的内容&#xff1a; 如何使用 “添加边界层”任务生成边界层网格边界层网格在流体动力学中的重要性可用于添加边界层网格的方法以及所需的用户输入 视频链接&#xff1a; FLUENT Meshing入门教程-8添加边界层网格_哔哩哔哩_bilibili 流体动力学中边界层的概念及…

JAVA面试题并发篇

1. 线程状态 要求 掌握 Java 线程六种状态 掌握 Java 线程状态转换 能理解五种状态与六种状态两种说法的区别 六种状态及转换 分别是 新建 当一个线程对象被创建&#xff0c;但还未调用 start 方法时处于新建状态 此时未与操作系统底层线程关联 可运行 调用了 start 方法…