Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
For Each dc As DataCol In DataTables("表A").DataCols
nn = nn + 1
Output.Show("第 " & format(nn,"000") & " 列: " & "【" & dc.name & "】" & _
" 的字符长度是: " & dc.name.length)
Next
上面代码是要显示列名的字符长度来,其结果是(不整齐):
第 001 列: 【v1】 的字符长度是: 2
第 002 列: 【v2】 的字符长度是: 2
第 003 列: 【计划号】 的字符长度是: 3
..........
第 015 列: 【半成品合格率】 的字符长度是: 6
第 016 列: 【装窑合格率】 的字符长度是: 5
想要显示这样整齐的效果(整齐),怎么做? :
这是例子:
下载信息 [文件大小: 下载次数: ] | |
![]() |
For Each dc As DataCol In DataTables("表A").DataCols |
楼上的思路是对的。
不过这个问题好像无解,狐表中英文和数字都算一个字符,空格也是一个字符,这样用PadRight就补不齐了。
'这个System.Text.Encoding.Default.GetByteCount可以解决
Dim n1,n2,n3 As Integer
Dim str As String
For Each dc As DataCol In DataTables("表A").DataCols
n1=System.Text.Encoding.Default.GetByteCount(dc.name)
If n1>n2 Then
n2=n1
End If
Next
For Each dc As DataCol In DataTables("表A").DataCols
n1=System.Text.Encoding.Default.GetByteCount(dc.name)
str = "第 " & format(n3,"000") & " 列: "
str &= "【" & dc.name & left(" ",n2-n1) & "】"
str &= " 的字符个数是: " & dc.name.length
n3 +=1
Output.Show(str)
Next
Dim a As String = "123"
a=a.padleft(10)
output.show("["+a+"]")
[ 123]
PadLeft
在字符串左侧填充空格或指定的字符,使得字符串的长度达到指定的长度。
语法:
PadLeft(Length)
PadLeft(Length, Char)
参数:
Length: | 希望字符串达到的长度。 |
Char: | 可选参数,指定用于填充的字符,如果省略,则用空格填充。 |
例如:
Dim
s1 As
String ="abcd"
Dim s2
As
String = s1.PadLeft(6,"0")
Dim s3 As
String
= s1.PadLeft(6)
Output.Show("s2 = """ & s2 & """")
Output.Show("s3 = """ & s3 & """")
在命令窗口执行上述代码,输出结果是:
s2 = "00abcd"
s3 = " abcd"
再例如我们要定义一个字符串,并将字符串的值设为100个空格,这还真是一个难题,因为100个空格可不是那么好数的。
如果用PadLeft,那么就很简单:
Dim s1 As String = " ".PadLeft(100)
PadRight
在字符串右侧填充空格或指定的字符,使得字符串的长度达到指定的长度。
4楼好。学习。
这 str &= "【" & dc.name & left(" ",n2-n1) & "】" 中间的空格太妙了。