Mus*_*pTR 1 java android date simpledateformat android-studio
我下载用户的日期数据并将该数据写入 firebase。但是,当从阿拉伯位置添加数据时,日期格式将无法正常工作。\n如何解决此问题?
\n输出:
\n"\xd9\xa2\xd9\xa0\xd9\xa2\xd9\xa1-\xd9\xa0\xd9\xa4-\xd9\xa1\xd9\xa7"\nRun Code Online (Sandbox Code Playgroud)\n我的代码:
\n SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());\n String currentDateandTime = df.format(new Date());\nRun Code Online (Sandbox Code Playgroud)\n我不想接收阿拉伯字母的数据。在任何情况下我都应该将数据取为 17/04/2021。不是 /\xd9\xa1\xd9\xa7/\xd9\xa2\xd9\xa0\xd9\xa2\xd9\xa1。
\n日期java.util时间 API 及其格式化 APISimpleDateFormat已经过时且容易出错。建议完全停止使用它们并切换到java.time现代日期时间 API *。
使用现代日期时间 API:
\nimport java.time.LocalDate;\nimport java.time.ZoneId;\nimport java.time.format.DateTimeFormatter;\nimport java.util.Locale;\n\npublic class Main {\n public static void main(String[] args) {\n DateTimeFormatter dtfEnglish = DateTimeFormatter.ofPattern("dd/MM/uuuu", Locale.ENGLISH);\n\n DateTimeFormatter dtfArabic = DateTimeFormatter.ofPattern("dd/MM/uuuu", Locale.ENGLISH)\n .localizedBy(new Locale("ar"));\n\n // Change the ZoneId as per your requirement e.g. ZoneId.of("Asia/Dubai")\n LocalDate date = LocalDate.now(ZoneId.systemDefault());\n\n System.out.println(date.format(dtfEnglish));\n System.out.println(date.format(dtfArabic));\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n输出:
\n18/04/2021\n\xd9\xa1\xd9\xa8/\xd9\xa0\xd9\xa4/\xd9\xa2\xd9\xa0\xd9\xa2\xd9\xa1\nRun Code Online (Sandbox Code Playgroud)\n从Trail: Date Time中了解有关现代日期时间 API 的更多信息。
\n* 出于任何原因,如果您必须坚持使用 Java 6 或 Java 7,则可以使用ThreeTen-Backport,它将大多数java.time功能向后移植到 Java 6 和 7。如果您正在处理 Android 项目和 Android API level 仍然不符合 Java-8,请检查通过脱糖可用的 Java 8+ API以及如何在 Android 项目中使用 ThreeTenABP。\n
\n| 归档时间: |
|
| 查看次数: |
643 次 |
| 最近记录: |