如何在VB6中计算数组

时间:2014-04-02 08:46:03

标签: arrays vb6

我有一个CSV文件,它将解析并将其放入数组。 注意这是一个大文件。我的问题是如何在Vb6中计算数组?是否可以在Array中进行计算?

1 个答案:

答案 0 :(得分:2)

读取文件并将其放入数组中,您可以执行以下操作:

'1 form with
'    1 command button: name=Command1
Option Explicit

Private Sub Command1_Click()
  Dim lngLine As Long
  Dim intFile As Integer
  Dim strFile As String
  Dim strData As String
  Dim strLine() As String
  'select file
  strFile = "c:\temp\file.txt"
  'read file
  intFile = FreeFile
  Open strFile For Input As #intFile
    strData = Input(LOF(intFile), #intFile)
  Close #intFile
  'put into array
  strLine = Split(strData, vbCrLf)
  'loop through complete array and print each element
  For lngLine = 0 To UBound(strLine)
    Print strLine(lngLine)
  Next lngLine
End Sub

这将在文件中读取,将其放入一个数组(每行都有自己的元素),然后遍历整个数组以打印表单上的每一行/元素

<强> [编辑]

下面是一个示例,说明如何从另一个数组中的相应项中减去数组中的项:

Private Sub Command1_Click()
  Dim lngIndex As Long
  Dim lngA(7) As Long
  Dim lngB(7) As Long
  'fill the arrays
  For lngIndex = 0 To UBound(lngA)
    lngA(lngIndex) = lngIndex + 1
  Next lngIndex
  For lngIndex = 0 To UBound(lngA)
    lngB(lngIndex) = (lngIndex + 1) ^ 2
  Next lngIndex
  'substract array a from array b
  For lngIndex = 0 To UBound(lngB)
    lngB(lngIndex) = lngB(lngIndex) - lngA(lngIndex)
  Next lngIndex
  'print arrays
  For lngIndex = 0 To UBound(lngA)
    Print CStr(lngA(lngIndex)) & " | " & CStr(lngB(lngIndex))
  Next lngIndex
End Sub