VBNewLine经过一定数量的字符和给定的字符

时间:2014-01-09 20:58:41

标签: vb.net

全部, 我开发了一个格式化/逗号分隔应用程序,它将一长串数字转换为正确的SQL查询格式。

例如:

101
102
103
104
105

变为:

('101','102','103','104','105')

这是一个非常有用的工具,但我们可以说有500种不同的值可以格式化。这在SQL服务器中创建了一个非常长的行。

我一直在互联网上搜索,但我还没有找到可以解决问题的东西:

如何每行自动换行100个字符,但不分解格式:

('Value1','Value2','Value3')

如果我需要进一步解释,请告诉我。谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

这会将“长字符串”转换为带有lineLength参数的sql格式:

Public Function ConvertToSqlParameter(input As String, lineLength As Integer) As String
    Dim sb = New StringBuilder("(")
    Dim len = 0
    For Each s In input.Split({Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries)
        If len >= lineLength Then
            sb.Append(Environment.NewLine)
            len = 0
        End If
        Dim str = "'" + s + "',"
        len += str.Length
        sb.Append(str)
    Next
    sb.Length -= 1
    sb.Append(")")
    Return sb.ToString()
End Function