当前位置: 首页 > 面试题库 >

Java 句点到字符串

从光启
2023-03-14
问题内容

我在Java中使用Joda-Time库。我在尝试将Period对象转换为“ x天,x小时,x分钟”格式的字符串时遇到了一些困难。

这些Period对象首先通过向它们添加一定数量的秒来创建(它们以秒为单位序列化为XML,然后从它们重新创建)。如果仅在其中使用getHours()等方法,则得到的全部为零,并且使用getSeconds 的总秒数。

如何让Joda计算相应字段(例如天,小时等)中的秒数?


问题答案:

你需要对周期进行归一化,因为如果用总秒数构造周期,则这是它唯一的值。对其进行归一化会将其分解为天,分钟,秒等的总数。

通过ripper234编辑 -添加TL; DR版本:PeriodFormat.getDefault().print(period)

例如:

public static void main(String[] args) {
  PeriodFormatter daysHoursMinutes = new PeriodFormatterBuilder()
    .appendDays()
    .appendSuffix(" day", " days")
    .appendSeparator(" and ")
    .appendMinutes()
    .appendSuffix(" minute", " minutes")
    .appendSeparator(" and ")
    .appendSeconds()
    .appendSuffix(" second", " seconds")
    .toFormatter();

  Period period = new Period(72, 24, 12, 0);

  System.out.println(daysHoursMinutes.print(period));
  System.out.println(daysHoursMinutes.print(period.normalizedStandard()));
}

将打印:

24 minutes and 12 seconds
3 days and 24 minutes and 12 seconds

因此,你可以看到非标准化期间的输出仅忽略了小时数(它没有将72小时转换为3天)。



 类似资料:
  • 问题内容: 我碰到了这段Java函数,将XML节点转换为Java String表示形式: 它看起来很简单,因为它希望输出字符串没有任何XML声明,并且必须包含缩进。 但是我想知道实际的输出应该如何,假设我有一个XML节点: 我可以假设应用上述转换后得到的String是: 我想自己测试一下,但是我不知道如何以该函数实际需要的方式表示这个XML节点。 我有些困惑,在此先感谢您的慷慨帮助。 问题答案:

  • 我有以下JSON字符串: 我只想要和。我试过这样的方法: 但我得到了以下错误: 我只使用过几次JSON。有人能帮我吗? 对我来说最好的例子是这样的,我在另一个例子中做过: 可能吗? 现在我已经做到了: 我试着这样做: 然后: 但现在当我做一个Prtinout时,我会得到和以前一样的错误:

  • 问题内容: 我在Java程序中有两个字符串,我想以某种方式混合以形成两个新字符串。为此,我必须从每个字符串中提取一些构成字符并将其添加以形成新的字符串。我有这样的代码(this.eka和this.toka是原始字符串): 我正在获取.charAt(x)部分的数字,那么如何将字符转换为字符串? 问题答案: 只使用永远使用代替 例如,当位置arent不是固定值而变量 其中x,y,z是保存从中提取位置的

  • 问题内容: 我正在尝试用Java创建一个简单的String to SHA1转换器,这就是我所拥有的… 当我通过它时,我[.知道它可能是像UTF-8这样的简单编码修复程序,但是有人可以告诉我我应该怎么做才能得到我想要的东西吗?还是我这样做完全错误? 问题答案: 这是我将字符串转换为sha1的解决方案。它在我的Android应用程序中运行良好:

  • 问题内容: 我有一个Java属性文件,并且有一个as 。因此,在加载如下所示的属性文件后,我使用方法检索的:: 然后 我需要从上面的字符串创建一个HashMap。应该是HashMap中,并应第秒。 如果是硬连线的,则如下所示: 问题答案: 将该方法与分隔符一起使用,以获取对列表。迭代对,然后再次使用分隔符以获取每个对的键和值。

  • 我必须将java“转换”为c。我做得对吗?你能纠正吗 爪哇-