Stringformat用法_第1页
Stringformat用法_第2页
Stringformat用法_第3页
Stringformat用法_第4页
Stringformat用法_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 名称 说明   Format(String, Object)  将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项。   Format(String, array<>()  将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。   Format(IFormatProvider, String, array<>()  将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效

2、项。指定的参数提供区域性特定的格式设置信息。   Format(String, Object, Object)  将指定的 String 中的格式项替换为两个指定的 Object 实例的值的文本等效项。   Format(String, Object, Object, Object)  将指定的 String 中的格式项替换为三个指定的 Object 实例的值的文本等效项。多个参数int m=new inta,b,c,d;string.format("012",m);一个参数private const string

3、 _extraClause = " AND C_INTERNSHIPORG_INTERNSHIPID = 0"/将MyCrypt.Decrypt(Request"id")作为_extraClause 的参数if (Request"id" != null && Request"id" != string.Empty)    mExtraMessage = string.Format(_extraClause, MyCrypt.Decrypt(Request"id

4、");2、格式化数值结果表字符  说明  示例  输出  C 货币 string.Format("0:C3", 2) 2.000 D 十进制 string.Format("0:D3", 2) 002 E 科学计数法 1.20E+001 1.20E+001 G 常规 string.Format("0:G", 2) 2 N 用分号隔开的数字 string.Format("0:N", 2500

5、00) 250,000.00 X 十六进制 string.Format("0:X000", 12) C  string.Format("0:000.000", 12.2) 012.200string.format用来格式化字符串(按指定的规则连接字符串或输出其他变量并返回新的字符串) 。string.format(fm,.);第一个参数用fm表示输出的格式,每个%符号后面是一个格式化表达式,每个格式化表达式按顺序对应后面的参数。所以用了N个格式化表达式,就必须在后面添加N个参数。下面是一个简单的例子:int = 123;st

6、r = "字符串"-下面的%s对应参数str, %i对应参数intstr = string.format("这是字符串:'%s' 这是数字值 %i",str,int);win.messageBox(str);-%05i表示格式化为至少五位的数字,不足在前面补0str = string.format("%05i",int);win.messageBox(str);格式化表达式:%零个或多个标志最小字段宽度精度修改符格式码注意:方括号表示可选参数1、格式码代码 c参数 数字值(number) 含义 参数被裁剪为8

7、位字节码并作为字符进行打印。代码 i,d参数 数字值(number) 含义 参数作为一个十进制整数打印。如果给出了精度而且值的位数小于精度位数,前面就用0填充。代码 u,o,x,X参数 数字值(number) 含义 参数作为一个无符号数字值打印,u使用十进制,o使用八进制,x或X使用十六进制,两者的区别是x约定使用abcdef,而X约定使用ABCDEF。代码 e,E参数 数字值(number) 含义 参数根据指数形式打印。例如,6.023000e23是使用代码e,6.023000E23是使用代码E。小数点后面的位数由精度字段决定,缺省值是6。代码 f参数 数字值(

8、number) 含义 参数按照的常规浮点格式打印。精度字段决定小数点后面的位数,缺省值是6。代码 g,G参数 数字值(number) 含义 参数以%f或%e(如G则%E)的格式打印,取决于它的值。如果指数大于等于-4但小于精度字段就使用%f格式,否则使用指数格式。代码 s参数 字符串值(string) 含义 打印一个字符串。代码 q 参数 (无)含义 打印一个字符串,并将字符串置于一对引号中,如果字符串中包含引号换行等自动添加转义符。如果要读取一个字符串传为脚本代码。为避免用户恶意注入引号等特殊字符,可以使用%q进行格式化。代码 %参数 (无)含义 取消

9、%转义打印一个%字符,即用%表示本来的%。2、 标志标志 -含义 值在字段中做对齐,缺省情况下是右对齐。标志 0含义 当数值为右对齐时,缺省情况下是使用空格填充值左边未使用的列。这个标志表示用零填充,它可用于d,i,u,o,x,X,e,E,f,g和G代码。使用d,i,u,o,x和X代码时,如果给出了精度字段,零标志就被忽略。如果格式代码中出现了负号,零标志也没有效果。标志 +含义 当用于一个格式化某个有符号值代码时,如果值非负,正号标志就会给它加上一个正号。如果该值为负,就像往常一样显示一个负号。在缺省情况下,正号并不会显示。标志 空格含义 只用于转换有符号值的代码。当值非负时,这个标志把一个

10、空格添加到它开始的位置。注意这个标志和正号标志是相互排斥的,如果两个同时给出,空格标志便被忽略。标志 #含义 选择某些代码的另一种转换形式:用于. #标志.o 保证产生的值以一个零开头x,X 在非零值前面加0x前缀(%X则为0X)e,E,f 确保结果始终包含一个小数点,即使它后面没有数字g,G 和上面的e,E和f代码相同。另外,缀尾的0并不从小数中去除3、 字段宽度字段宽度是一个十进制整数,用于指定将出现在结果中的最小字符数。如果值的字符数少于字段宽度,就对它进行填充以增加长度。4、 精度精度以一个句点开头,后面跟一个可选的十进制数。如果未给出整数,精度的缺省值为零。对于d,i,u,o,x和X

11、类型的转换,精度字段指定将出现在结果中的最小的数字个数并覆盖零标志。如果转换后的值的位数小于宽度,就在它的前面插入零。如果值为零且精度也为零,则转换结果就不会产生数字。对于e,E和f类型的转换,精度决定将出现在小数点之后的数字位数。对于g和G类型的转换,它指定将出现在结果中的最大有效位数。当使用s类型的转换时,精度指定将被转换的最多的字符数。如果用于表示字段宽度和/或精度的十进制整数由一个星号代替,那么printf的下一个参数(必须是个整数)就提供宽度和(或)精度。因此,这些值可以通过计算获得而不必预先指定。5、示例格式代码 A ABC ABCDEFGH %s A ABC ABCDE

12、FGH %5s #A #ABC ABCDEFGH %.5s A ABC ABCDE %5.5s #A #ABC ABCDE %-5s A# ABC# ABCDEFGH格式代码 1 -12 12345 123456789 %d 1 -12 12345 123456789 %6d #1 #-12 #12345 123456789 %.4d 0001 -0012 12345 123456789 %6.4d #0001 #-0012 #12345 123456789 %-4d 1# -12# 12345 1234

13、56789 %04d 0001 -012 12345 123456789 %+d +1 -12 +12345 +123456789格式代码 1 .01 .00012345 12345.6789 %f 1.000000 0.010000 0.000123 12345.678900 %10.2d #1.00 #0.01 #0.00 #12345.67 %e 1.000000e+00 1.000000e-02 1.234500e-04 1.234568e+04 %.4e 1.0000e+00 1.0000e-02 1.2345e-04 1.

14、2346e+04 %g 1 0.01 0.00012345 12345.7格式代码 6.023e23 %f 60229999999999975882752.000000 %10.2e 60229999999999975882752.00 %e 6.023000e+23 %.4e 6.0230e+23 %g 6.023e+23用上面的格式化函数可以轻松实现数字的进制转换-数字转换为二进制字符串str = string.format("%b",23 );-二进制字符串转换为数字n = tonumber(str,2)-数

15、字转换为八进制字符串str = string.format("%o",23 );-八进制字符串转换为数字n = tonumber(str,8)-数字转换为十六进制字符串str = string.format("%x",23 );-十六进制字符串转换为数字n = tonumber(str,16)四、格式化时间模拟精灵v7.10 格式化时间的函数有 string.time;string.ftime;os.data;os.time 等函数。os.time 是从table生成数字时间值 string.time是从字符串生成数字时间值。os.data 与strin

16、g.ftime功能相同从时间值反过来生成字符串或时间。这里我们介绍string.time函数、string.ftime函数,下面是使用示例:-从字符串创建时间值t = string.time("2006/6/6 0:0:0","%Y/%m/%d %H:%M:%S")-从时间值创建字符串str = string.ftime("%Y/%m/%d %H:%M:%S",t )格式化语法(在很多编程语言中都适用的语法)%a - 当前区域星期几的简写%A - 当前区域星期几的全称%b - 当前区域月份的简写%B - 当前区域月份的全称%c - 当

17、前区域首选的日期时间表达%C - 世纪值(年份除以 100 后取整,范围从 00 到 99)%d - 月份中的第几天,十进制数字(范围从 01 到 31)%D - 和 %m/%d/%y 一样%e - 月份中的第几天,十进制数字,一位的数字前会加上一个空格(范围从 ' 1' 到 '31')%g - 和 %G 一样,但是没有世纪%G - 4 位数的年份,符合 ISO 星期数(参见 %V)。和 %V 的格式和值一样,只除了如果 ISO 星期数属于前一年或者后一年,则使用那一年。%h - 和 %b 一样%H - 24 小时制的十进制小时数(范围从 00 到 23)%I - 12 小时制的十进制小时数(范围从 00 到 12)%j - 年份中的第几天,十进制数(范围从 001 到 366)%m - 十进制月份(范围从 01 到 12)%M - 十进制分钟数%n - 换行符%p - 根据给定的时间值为 am' 或 pm',或者当前区域设置中的相应字符串%r - 用 a.m. 和 p.m. 符号的时间%R - 24 小时符号的时间%S - 十进制秒数%t - 制表符%T - 当前时间,和 %H:%M:%S 一样%u - 星期几的十进制数表达 1,7,1 表示星期一%U - 本年的第几周,从第一周的第一个星期天

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论