java创建指定格式日期_如何在Java 8中以自定义格式打印日期?

如果我正确理解您的要求,这可能会解决您的问题:

int index = 1;

//yyyy, MM, dd, hh, min

LocalDateTime ldt = LocalDateTime.of(2018, 12, 31, 12, 10);

//specify custom pattern here

String date = DateTimeFormatter.ofPattern("yyyy.MM.dd.").format(ldt);

String importance = "kozepesen fontos";

String name = "egyik feladat";

String yesNo = "yes";

String formatter = "%-4d| %-12s| %-17s| %-40s| %-5s%n";

//now use System.out.format() to print with pattern specified in 'formatter'

System.out.format(formatter, index, date, importance, name, yesNo);

Output:

1 | 2018.12.31. | kozepesen fontos | egyik feladat | yes

>在上述解决方案中,我们不可避免地将日期转换为字符串.也就是说,因此我们可以指定用于显示日期的自定义模式.首先,我们创建具有所需模式的DateTimeFormatter()实例.该模式由DateTimeFormatter的ofPattern(String pattern)方法指定.然后,要获取String作为返回类型,我们再次使用DateTimeFormatter中的format(TemporalAccessortemporal)方法.正如上面的代码所示,我们可以将DateTime实例用作format()中的TemporalAccessor参数.

>那么字符串格式化程序=“%-4d |%-12s |%-17s |%-40s |%5s%n”如何工作?

我将Formatter documentation的语法用于Java 8.

–>结果将被证明是正确的.

%->结果是一个文字.

n->结果是特定于平台的行分隔符.

d->结果格式为十进制整数.

s->如果参数arg为null,则结果为“ null”.如果arg实现Formattable,则将调用arg.formatTo().否则,通过调用arg.toString()获得结果.

最后,我使用的数字指定每个字段允许使用的字符数.

>然后最后,我们调用System.out.format而不是printf(),其中格式指定字符串是第一个参数,所有其他要格式化的变量必须以正确的顺序键入(与命令中的顺序相同).格式指定的字符串).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值