java创建指定格式⽇期_如何在Java8中以⾃定义格式打印⽇
期?
如果我正确理解您的要求,这可能会解决您的问题:
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->结果格式为⼗进制整数.格式化命令format参数
s->如果参数arg为null,则结果为“ null”.如果arg实现Formattable,则将调⽤arg.formatTo().否则,通过调⽤String()获得结果.
最后,我使⽤的数字指定每个字段允许使⽤的字符数.
>然后最后,我们调⽤System.out.format⽽不是printf(),其中格式指定字符串是第⼀个参数,所有其他要格式化的变量必须以正确的顺序键⼊(与命令中的顺序相同).格式指定的字符串).
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论