String.Format换行符

时间:2010-07-19 04:17:09

标签: vb.net

我有一个简单的代码陈述:

Return String.Format("{0} {1} {2}", _var1, _var2, _var3)

我正在尝试使用这个格式化的字符串来输出它自己的行上的每个var。我是vb.net的新手,但我确实试过了一件事:

"{0}\n {1}\n {2}"

没用。有什么帮助吗?

7 个答案:

答案 0 :(得分:17)

这个怎么样:

Return String.Format( _
    "{1}{0}{2}{0}{3}{0}", _
    Environment.NewLine, _
    _var1, _
    _var2, _
    _var3 _
)

这也可以,但它有点“棘手”:

Return New StringBuilder() _
    .AppendLine(_var1.ToString()) _
    .AppendLine(_var2.ToString()) _
    .AppendLine(_var3.ToString()) _
    .ToString()

答案 1 :(得分:2)

我会使用像

这样的东西
String.Format("{1}{0},{2}{0},{3}{0}", vbcrlf, _var1, _var2, var2)

答案 2 :(得分:1)

Function sformat([string], ParamArray args()) As String
    [string] = [string].replace("\n", vbLf)
    [string] = [string].replace("\r", vbCr)
    Return String.Format([string], args)
End Function

使用就像你使用string.format,除了调用sformat(yourstring,param1,param2)

答案 3 :(得分:0)

我会选择这样的东西:

Return String.Format("{0}{1}{2}",_var1 & vbcrlf, _var2 & vbcrlf, _var3 & vbcrlf)

答案 4 :(得分:0)

好的,所以VB在这方面很蹩脚。怎么样:

String.Format(“Var1:{0} \ nVar2:{1} \ nVar3:{2}”。替换(“\ n”,vbCrLf),var1,var2,var3)

答案 5 :(得分:0)

这也可以使用xml文字作为格式字符串

        Dim fmt = _
<xml>Var 1: {0}
Var 2: {1}
Var 3: {2}</xml>
        Trace.WriteLine(String.Format(fmt.Value, 1, 2, 3))

答案 6 :(得分:0)

最简单的解决方案:

return $"{_var1}
{_var2}
{_var3}"

或者:

return $"{_var1}{vbCrlf}{_var2}{vbCrlf}{_var3}"

请确保您使用的是最新的VB实施之一。