Foxtable(狐表)用户栏目专家坐堂 → [求助]怎样通过代码转换格式的问题


  共有6562人关注过本帖树形打印复制链接

主题:[求助]怎样通过代码转换格式的问题

帅哥哟,离线,有人找我吗?
54292550
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:283 积分:4129 威望:0 精华:0 注册:2011/8/19 10:07:00
[求助]怎样通过代码转换格式的问题  发帖心情 Post By:2013/4/5 0:32:00 [只看该作者]

要求:
1.将“表A”中第一行的数据转换成文本信息。
2.每一个单元格都有长度格式要求。
例如:
表A第一行: D13B04B05020 1.057 21.48 50 23.87 4.5361 199.61 4.56 200.7172 0
转换要求:
D13B04B05020→D13B04B05020  长度格式不变
       1.057→01057         长度5位,小数3位
       21.48→21480         长度5位,小数3位
          50→05000         长度5位,小数2位
       23.87→23870         长度5位,小数3位
      4.5361→45361         长度格式不变
      199.61→19961         长度5位,小数2位
        4.56→04560         长度5位,小数3位
    200.7172→2007172       长度7位,小数4位
           0→00000         长度5位,小数2位

最后经过转换第一行的结果:(无小数点)
D13B04B0502001057214800500023870453611996104560200717200000

 

请问怎样通过代码实现这个转换?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:问题.table

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:相关问题要求.txt


 回到顶部
帅哥哟,离线,有人找我吗?
FoxMan
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:302 积分:1860 威望:0 精华:0 注册:2012/4/27 11:34:00
  发帖心情 Post By:2013/4/5 1:30:00 [只看该作者]

Dim s1,s2 ,s3 As String 
Dim t1 As Table =Tables("表A") 
Dim v As Double 
Dim r1 As Row =t1.Current 
If r1 IsNot Nothing AndAlso r1("第一列") > "" Then 
    For Each c As Col In t1.Cols 
         s1=r1(c.name) s2=s1.replace(".","") 
         If Double.TryParse(s1,v) Then '如果转换成功 
              Dim n1 As Integer = s2.Length 
              s3 = s3 & Format(val(s2),New String("0",iif(n1 <6,5,n1))) 
         Else 
              s3 = s3 & s1 
         End If 
    Next 
    Output.Show(s3) 
End If
[此贴子已经被作者于2013-4-5 10:58:24编辑过]

 回到顶部