Use Mid$ to Compose a Big String

Use Mid$ to Compose a Big String

The following code is a fast way to compose a big string by using Mid$ function instead of using the concatenating operator. The strings concatenated in a loop are often variable. So use S1 to represent general case.

     Const AllocFactor = 100000    Dim S As String    Dim S1 As String    Dim tmp As String    Dim i As Long    Dim StrLen As Long    Dim MaxLen As Long    Dim Curpos As Long    Dim CurLen As Long    MaxLen = AllocFactor    S = Space(MaxLen)    Curpos = 1    S1 = "abc"    For i = 0 To 99999        StrLen = Len(S1)        CurLen = Curpos + StrLen - 1        If CurLen > MaxLen Then            tmp = S            S = Space(MaxLen + AllocFactor)            Mid$(S, 1, MaxLen) = tmp            MaxLen = MaxLen + AllocFactor        End If        Mid$(S, Curpos, StrLen) = S1        Curpos = CurLen + 1    Next    If CurLen < MaxLen Then S = Left$(S, CurLen)

See also  5 Tips for Choosing the Right Medical Software for Your Practice

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist