erlang io format 格式化输出总结
来源:互联网 发布:程序员在什么系统算 编辑:程序博客网 时间:2024/06/10 08:26
关于erlang的io format各种格式的介绍比较多,但都不全面,这里自己做一个总结。
3个输出函数
format(IoDevice, Format, Data)->
format(Format, Data)->
format(Format)->
Format标准格式:~F.P.PadModC
F表示输出长度和格式 , +10表示左对齐输出10位长度, -5表示右对齐输出5位长度,输出的Data长度不足时,用Pad填充
P表示输出精度,即截取Data的长度,输出精度P大于Data长度时,用Pad填充
Pad表示输出填充字符,上面2个都会用到,只能为一个character,默认为空格
如果F,P或者 Pad为*,Data中下一个参数为 F or P的值
Mod控制类型的修饰,(目前只有t一种,用作unicode 转换)
C表示控制类型
常见控制类型:
~c anscii码 将P作为输出该字母的次数
eg.> io:fwrite("|~10.5c|~-10.5c|~5c|~n", [$a, $b, $c]).| aaaaa|bbbbb |ccccc|ok
~f 浮点数 P为输出该浮点数小数点后位数,不足时用0填充~s 字符串 P为截取Data的长度
~w Erlang term
~p 与~w类似,不过当多行时将自动换行
~W 比~w多一个参数,表示打印深度,Term深度超过该参数时,打印时用...代替表示
~n 换行符
~n 换行符
~B 输出格式基于2...36进制,将P作为进制,默认为10进制
eg. io:fwrite("~.16B~n", [31]). 输出31的16进制格式
~X 输出格式基于2...36进制的数字,2个参数,第一个是要输出的Data,第二个是在输出的数字之前带上的参数。
如: io:fwrite("~.16X~n", [31,"10#"]). 10#31 ok.
~b 类似与~B,输出小写字母
~x 类似与~X,输出小写字母
~+ 类似与~#,输出小写字母
应用举例:
io:format("|~10.7.+s|",["abc"]) %%打印10长度,其中字符串长度为7,剩余用+号填充
|+++abc++++|
io_lib:format("~.*..f", [6, 192.2225]). 这里*代表Data中的参数6, f前面的一个.不知道什么意思,但不能省略或替换,否则会出错
["192.222500"]
io:format("~.2..f", [192.2225]).
192.22
io:format("~8.2.0B,", [2]) 输出Data的2进制形式,并凑齐8个长度,不足8时用0填充
00000010
lists:flatten(io_lib:format(Format,[Arg])) 可以获取到格式化输出的字符串
0 0
- erlang io format 格式化输出总结
- erlang: format 格式化输出
- erlang 格式化输出
- erlang 格式化输出
- erlang 格式化输出
- [Erlang 0041] 详解io:format
- erlang中io:format数据类型
- 格式化输出函数: Format
- 格式化format()输出字符串
- String.format() (格式化输出)
- python-格式化输出-format
- 格式化format()输出字符串
- C#,String.Format,数字格式化输出 ,format
- c# string.Format 格式化输出
- String.Format数字格式化输出
- python 格式化输出 format()
- 格式化输出函数(1): Format
- python的格式化输出format
- MySQL连接字符串总结
- DirectionalViewPager支持横向和纵向的ViewPager
- 继承
- tar命令详解
- Android 应用内存限制
- erlang io format 格式化输出总结
- 11.如何快速进门新技术
- Andriod开发技巧——Fragment的懒加载
- 有疑问的题目
- VS2010添加Visual Assist 扩展
- 2015年 国家超级计算济南中心 工作日志
- 掌握ajax 第二部分构建 Ajax 后端
- php调试利器之phpdbg安装配置详解
- file标签之act=info,查看文件或目录属性信息