vb中怎么实现文本两列互换位置?第二列和第三列位置换过来,
文本内容格式如下:
a,s,d,f
g,h,j,k
q,w,e,r
转换成:
a,d,s,f
g,j,h,k
q,e,w,r

解决方案 »

  1.   

    用split拆分成数组,变换一下位置,再用join合并成字符串
      

  2.   

    想学习,就看看msdn的split和join的用法
    变换一下位置,就如:a,b,c,d  b和c换位,s=ss(1):ss(1)=ss(2):ss(2)=s
    是基础的算法
      

  3.   

    是不是要先添加datagrid控件呀?
    我在添加部件里也找不到这个东东呀,谁能给我个?
      

  4.   

    数据量大吗 不大的话用regtop 强烈推荐表达式:
    regtop -gt, 3.txt 33.txt "(.*?),(.*?),(.*?),(.*)" 0,0,2,1,3
      

  5.   

    就是把文本全部读进内存,交换后再写回去。用:
    open "文件路径" for input as #1 '读入
    交换操作……
    close #1
    open "文件路径" for output as #1'写回
    写回操作……
    close #1
      

  6.   

    Private Sub Form_Load()
    Dim s0 As String
    Dim s1 As String
    Dim ss As String
    Dim s As String
    Dim i  As Integer
    Dim a() As String
    Open "C:\1.txt" For Input As #1
    Do Until EOF(1)
    Line Input #1, s
    ReDim Preserve a(i)
    a(i) = s
    i = i + 1
    Loop
    Close #1
    s0 = a(0)
    s1 = a(1)
    a(0) = s1
    a(1) = s0
    For i = 0 To UBound(a)
    ss = ss & a(i) & vbCrLf
    Next
    Open "C:\1.txt" For Output As #1
    Print #1, ss
    Close #1
    End Sub
      

  7.   

    改为交换列的:
    Private Sub Form_Load()
    Dim s0 As String
    Dim s As String, s1 As String, s2 As String, ss As StringDim i  As Integer
    Dim a
    Open "C:\1.txt" For Input As #1
    Do Until EOF(1)
    Line Input #1, s
    a = Split(s, ",")
    If s <> "" Then
    s1 = a(1)
    s2 = a(2)
    a(2) = s1
    a(1) = s2
    s = Join(a, ",")
    End If
    ss = ss & s & vbCrLf
    Loop
    Close #1
    Open "C:\1.txt" For Output As #1
    Print #1, ss
    Close #1
    End Sub
      

  8.   

    SYSSZ你真是个好人呀!!!
    正是要这个东东,主要是学习,msdn中也没有split和join的示例,看的不是很明白,这下好了
    谢谢了