java格式化输出到文件,Java学习笔记之格式化输出

格式化输出局势指某种格式输出。C语言中的printf()函数就是提供这样的功能,当然这要与占位符配合使用。

1.格式化说明符以及类型换换字符

格式化说明符就是描述占位符的格式化,用以控制将要填充在此处的数据的格式。

抽象语法:%[argument_index$][flags][width][.precision]conversion

conversion就是指类型转换字符

argument_index用来指定该占位符对应着后面第几个参数,默认是按照顺序的插入的。

flags用来对输出进行标志控制,取决于conversion。

width用来控制最小尺寸。可应用于各种类型的数据转换,并且行为方式都一样。

precision用来指明最大尺寸,不是所有类型数据都能使用precision,并且应用于不同类型的数据转换时,prcision的意义也不同。在将precision用于String时,表示打印String输出字符的最大数量;在将precision用于浮点数时,表示小数部分显示出来的位数(默认6位),如果小数位过多则舍入,过少则补0.

[]中的都是可选的,而conversion是必须的。

常用的类型转换字符有:

d

整数型(十进制)

e

浮点数(科学计数)

c

Unicode字符

x

整数(十六进制)

b

Boolean值

h

散列码(十六进制)

s

String

%

字符“%”

f

浮点数(十六进制)

2.格式化输出方法

Javs SE 5之后,推出了C语言中的printf方法;同时引入了format方法可用于PrintStream或PrintWriter对象。format和printf方法是等价的。

int x = 5;

double y = 5.12344567;

System.out.printf("Row 1:[%d %.9f]\n", x, y);

System.out.format("Row 1:[%d %.9f]\n", x, y);

Output:

Row 1:[5 5.123445670]

Row 1:[5 5.123445670]

另外,String类也提供一个静态的format方法。

System.out.println(String.format("Row 1:[%d %.9f]\n", x, y));

输出同样与上面相同。

3.Formatter类

在Java中,所有新的格式化功能都有java.util.Formatter类处理。可将Formatter看做一个翻译器,将你的格式化字符串与数据翻译成需要的结果。当你创建一个Formatter对象的时候,需要向其构造器传递一些信息,告诉它最终的结果将向哪里输出。

Formatter formatter = new Formatter(System.out);

formatter.format("Row 1:[%d %.9f]\n", x, y);

输出与上面的相同。4.总结

1)记住格式化说明符的形式,以及一些特殊的地方,比如说precision的用法。记住常用的类型转换字符。

2)printf和format方法用于格式化输出,用于PrintStream和PrintWrter对象;另外String.format()同样可以用于输出。

3)Formatter类用于处理格式化,需要向其传递一个输出流的对象,用于指定输出将输出到哪里。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值