在Java中,我只想以小时和分钟为单位打印一天中的时间,并希望它根据语言环境在“ 13:00”和“ 1:00 PM”之间正确切换。我该怎么做呢?
语言环境没有明确指定是12小时制还是24小时制。相反,特定于语言环境的日期格式由直接定义格式的语言环境处理。
如果您只想使用“首选语言环境”时间格式,则只需调用三种DateFormat.getTimeInstance(...)
静态方法之一,然后使用DateFormat
其返回的值即可。
如果SimpleDateFormat
您手中有一个实例,则可以(如果您准备进行大量编码)调用toPattern()
并解析结果模式以查看其是否使用了12或24小时的日期……或都不使用。您甚至可以调整模式以使用“其他”形式,然后调用applyPattern(String)
以更改格式。
问题内容: 我想确定给定语言环境的 字母 是什么,最好是基于浏览器的Accept-Language标头值。任何人都知道如何执行此操作,必要时使用库? 问题答案: 看看[LocaleData.getExemplarSet] [1] 例如对于英语,这将返回abcdefghijklmnopqrstuvwxyz [1]:[http]( http://icu- project.org/apiref/icu4
问题内容: 在我的应用中,我需要不时格式化。我必须使用什么方法? 例如,时间如。如何在Java中将时间转换为24小时? 问题答案: 试试这个: 产生: 参见:http : //download.oracle.com/javase/1.5.0/docs/api/java/text/SimpleDateFormat.html
问题内容: 我想将24小时制转换为12小时制。例如:-如何将日期2012-03-20T22:30:00.000 + 05:30转换为2012-03-20 10:30 PM? 我已经引述了日期,但它是24小时制。我虽然使用了SimpleDateFormater,但仍在 12.30上显示00.30,而不是12.30 PM 。 提前致谢。 问题答案: 捆绑的java.util.Date和.Calenda
问题内容: 我有一个形式的edittext,当用户将文本输入到edittext中时,我希望程序可以检测到哪种语言插入了edittext。 有没有办法确定字符串是英语还是波斯语? 我找到了这个阿拉伯语代码 但是如何更改波斯语的此代码? 问题答案: 波斯语(也适用于乌尔都语)字母的所有可能的Unicode范围: 0x0600至0x06FF 0xFB50至0xFDFF 0xFE70至0xFEFF 因此,
问题内容: 我有以下24小时工作时间: 如何将其转换为12小时? 我想智能转换到与到。我可以使用自己的逻辑来执行操作,但是有没有办法在没有…的情况下智能地执行此操作? 问题答案:
问题内容: 有没有办法确定字符串是英语还是阿拉伯语? 问题答案: 这是我刚刚尝试过的简单逻辑: 当且仅当在文本中找到阿拉伯语unicode代码点时,它才将文本声明为阿拉伯语。您可以增强此逻辑,使其更适合您的需求。 范围0600-06E0是阿拉伯字符和符号的代码点范围(请参见Unicode表)