1

我有一个包含 3 个选项卡的表单,用户将在表单上填充下拉菜单,然后按保存。

然后我将字符串写入一个文本文件,每个答案之间都有一个分隔符,除了我在下面所做的之外,还有更好的方法吗?

Dim tesstring As String = " test " & _
         Separator & _
         answer1 & _
         Separator & _
         answer2 & _
         Separator & _
         answer 3 & _
         Separator & _
         answer4 & _
         Separator & _
         answer5 & _
         Separator & _
         Combo_BS.SelectedItem.ToString.Substring(0, 6) & _
         Separator & _
         answer6 & _
         Separator & _
         answer7 & _
         Separator & _
         answer8 & _
         Separator & _
         answer9 & _
         Separator & _
         answer10 & _
         Separator & _
         answer11 & _
         Separator & _
         answer12 & _
         Separator & _
         answer13 & _
         Separator & _
         answer14 & _
         Separator & _
         answer15 & _
         Separator & _
         answer16 & _
         Separator & _
         answer17 & _
         Separator & _
         answer18 & _
         vbCrLf
4

2 回答 2

3

除了我在下面所做的之外,还有更好的方法吗?

是的。创建一个包含所有值的数组,然后使用String.Join

Dim tesstring As String = String.Join(Separator, values) & vbCrlf

理想情况下,一开始就没有 18 个不同的answer变量——这些变量不能放在一个集合中吗?

于 2012-12-07T08:30:13.100 回答
0

要扩展 Jon 的答案,请创建一个答案集合。例如,如果所有答案都在名为“Panel1”的面板中的文本框中:

    Dim answers = From x In Me.Panel1.Controls.OfType(Of TextBox)() Select x.Text
    Dim tesstring As String = String.Join(Separator, answers)
于 2012-12-07T09:33:19.980 回答