如何在VB中的现有字符串末尾添加字符串

时间:2015-02-16 09:17:35

标签: vb.net string-concatenation

我有一个字符串Str1,我希望在Str2

的末尾添加新的字符串Str1

我的代码是:

Dim TmpMsgGSM As String
Dim ind1 =-1
TmpMsgGSM = "CONFigure:GSM:SIGN"

ind1 = TmpMsgGSM.IndexOf("SIGN")
ind1 = ind1 + 3
TmpMsgGSM.Insert(TmpMsgGSM.IndexOf("SIGN") + ind1, "koko")

我在使用Insert的行中遇到异常。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

以下是您的代码的问题:

Dim TmpMsgGSM As String
Dim ind1 =-1
TmpMsgGSM = "CONFigure:GSM:SIGN"

ind1 = TmpMsgGSM.IndexOf("SIGN")
ind1 = ind1 + 3 '17
'TmpMsgGSM.IndexOf("SIGN") + ind1 = 14 + 17 = 31
TmpMsgGSM.Insert(TmpMsgGSM.IndexOf("SIGN") + ind1, "koko")

表达式TmpMsgGSM.IndexOf("SIGN") + ind1的值为31 - 超过字符串TmpMsgGSM的结尾因此异常。

如果您只是TmpMsgGSM.Insert(ind1, "koko"),那么您将获得字符串"CONFigure:GSM:SIGkokoN"。您可能需要将4添加到ind1而不是3才能获得"CONFigure:GSM:SIGNkoko"

但是,当然,执行此操作的简单方法是TmpMsgGSM = TmpMsgGSM & "koko"

更好的是TmpMsgGSM &= "koko"