Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB.Net中的新行字符?_Vb.net_String - Fatal编程技术网

VB.Net中的新行字符?

VB.Net中的新行字符?,vb.net,string,Vb.net,String,我正在尝试在vb.net的网页上打印消息。我正试着用新的语言传达信息。我尝试使用“\r\n”和新行字符。但这是打印在页面上,而不是提交到下一行。如果有其他选择,请告诉我。试试。查看Environment.NewLine。对于网页,使用或标记断行。你需要在网页上使用HTML来获得断行。例如“”将给您换行符 VbCr 试试看。它是: vbnewline 比如说 Msgbox(“Fst-line”和vbnewline&“second-line”)您需要使用: 是获取字符的最有效的“.NET”方式,

我正在尝试在vb.net的网页上打印消息。我正试着用新的语言传达信息。我尝试使用“\r\n”和新行字符。但这是打印在页面上,而不是提交到下一行。如果有其他选择,请告诉我。

试试。

查看
Environment.NewLine
。对于网页,使用

标记断行。

你需要在网页上使用HTML来获得断行。例如“
”将给您换行符

VbCr
试试看。

它是:

vbnewline

比如说

Msgbox(“Fst-line”和vbnewline&“second-line”)
您需要使用:


是获取字符的最有效的“.NET”方式,它在Windows上也会发出回车符和换行符,如果您担心这一点,在Unix中只会发出回车符


但是,您也可以使用VB6样式或,分别提供回车符和换行符,或仅提供回车符。

如果您使用的是类似的内容

Response.Write("Hello \r\n")
Response.Write("World \r\n")
输出是

Hello\r\nWorld\r\n
那么你基本上是在寻找这样的东西

Response.Write("Hello <br/>")
Response.Write("World <br/>")
您也可以将“
”定义为常量并重用它

例如

Public Const HtmlNewLine as string=“
” Response.Write(“Hello”和HtmlNewLine) Response.Write(“World”和HtmlNewLine)
在VB中执行此操作的正确方法是在换行符的VB常量中使用。主要的三点是

  • vbCrLf=“\r\n”
  • vbCr=“\r”
  • vbLf=“\n”
默认情况下,P> VB不允许字符串中任何字符转义代码,它们与C语言和C++语言不同。这样做的原因之一是在处理文件路径时易于使用

  • C++文件路径字符串:“C:\\foo\\bar.txt”
  • VB文件路径字符串:“c:\foo\bar.txt”
  • 文件路径字符串:C++方式或@“c:\fo\bar .txt”
在这种情况下,我可以使用
vbNewLine
vbCrLf
“\r\n”

您可以在visual basic.net中解决该问题,而无需连接文本,您可以将其用作重载Tostring的返回类型:

System.Text.RegularExpressions.Regex.Unescape(String.format("FirstName:{0} \r\n LastName: {1}", "Nordanne", "Isahac"))

在asp.net中,要在字符串中指定新行字符,应使用


对于基于窗口的应用程序
环境。换行符将正常工作。

vbCrLf
是Visual Basic 6天版的遗留版本。尽管它的工作原理与Environment.NewLine完全相同,但保留它只是为了让VB6开发人员更熟悉.NET api

您可以调用String.Replace()函数以避免多个单个字符串值的串联


MsgBox(“第一行\n第二行。”.Replace(“\n”,Environment.NewLine))

Environment.NewLine
vbCrLf
Constants.vbCrLf

有关VB.NET新行的更多信息:


这对web环境没有任何作用。您需要一个
tagI suspect,因为当您的答案涉及如何获得发问者实际不需要的换行符时。他实际上需要的是一个HTML休息。正如其他答案所述。所有关于新线的回答都没有真正回答这个问题。尽管如此,这个问题仍然非常不清楚。我猜“在网页上打印消息”实际上可能意味着他试图在网页上使用alert()或msgbox(),这将使它成为一个完全不同的问题。是的,如果他提到“\r\n”这是vbCrLf的C样式,那么这个问题很糟糕,我想这就是他想要的答案。!!-你今天让我很开心。。我使用StringBuilder将其构建并导出为csv,但其他任何操作都不起作用(.Net 1.1,因此AppendLine()不可用)。vbCrLf工作完美!!!从题目来看,这是我所期待的,谢谢!VbCr=“\r”。vbCrLf=“\r\n”更为常见。这些方法在.NET和标准Environment.NewLine中进行了详细说明。由于OP正在查看ASP.NET,这些常量无论如何都不起作用。HTML
标记是提供所需解决方案的正确方法。我指的是VB6样式常量。这样我们就清楚了。不过我还是不会投票否决的。@John,事实上你错了。vb常量绝对不是弃用的。这些常量是从经典vb继承而来的(存在于Microsoft.VisualBasic程序集中)。它们旨在方便地迁移到.Net。在非VB项目中使用它们将在Microsoft.VisualBasic程序集上创建程序集依赖项。有了.NETCore,有更多的理由选择Environment.NewLine。如果你想全力以赴,你甚至可以将Environment子类化,并将HtmlNewLine添加到其中……:)是的,John。如果需要,我们还可以添加扩展方法。这是正确的答案。现在,我可以在标签的帮助下在新行中编写字符串消息。这在Reporting Services文本框表达式中非常有效。非常感谢提供了

解决方案,这是这里最好的解决方案,IMHO。
Hello 
World
Public Const HtmlNewLine as string ="<br />"
Response.Write("Hello " &  HtmlNewLine) 
Response.Write("World " &  HtmlNewLine)
System.Text.RegularExpressions.Regex.Unescape(String.format("FirstName:{0} \r\n LastName: {1}", "Nordanne", "Isahac"))