Dim stringBuilder as StringBuilder = New StringBuilder()
Dim MessageToPayee as String = "1234567890123456789012345678901234567890123456789012345678901231234567890123456789012345678901231"
If Not String.IsNullOrEmpty(MessageToPayee)
stringBuilder.AppendFormat("<FieldTag6400><BeneficiaryInfoLine1>{0}</BeneficiaryInfoLine1>", MessageToPayee.Substring(0, 30))
If MessageToPayee.Length > 30 Then
Dim loops as Integer = CType(Math.Ceiling((MessageToPayee.Length - 30) / 33), Integer)
Console.WriteLine(String.Format("Number of Loops: {0}",loops))
For i As Integer = 1 To loops
Console.WriteLine(String.Format("Loop #: {0} Total Length: {1} StartPosition: {2}",i, MessageToPayee.Length, (30 + (33 * (i-1)))))
stringBuilder.AppendFormat("<BeneficiaryInfoAdditionalLine>{0}</BeneficiaryInfoAdditionalLine>", MessageToPayee.SubString(30 + (33 * (i-1)), if(MessageToPayee.Length >= 63 + (33 * (i-1)), 33, MessageToPayee.Length - (30 + (33 * (i-1))))))
stringBuilder.AppendFormat("</FieldTag6400>")
Console.WriteLine(stringBuilder.ToString())