显示引号“

时间:2016-03-25 08:02:58

标签: .net vb.net string-formatting quotation-marks

我正在尝试获取引号,因为它们是...在创建文本文件时显示。为此,我使用以下代码。

当我在Visual Studio中编写代码时,我没有看到以下代码中的任何错误,但是当我尝试调试时...然后我收到错误。

谁能告诉我发生了什么,我在这里做错了什么。

Dim qmQuotes As Char = Convert.ToChar(&H2022) ' "

 Dim Restabs As String =
        String.Format("[restabs alignment={1}osc-tabs-left{1} responsive={1}false{1} tabcolor={1}#d1d1d1{1} seltabcolor={1}#000000{1}]", qmQuotes)

Dim objWriter As New System.IO.StreamWriter("d:\value1.txt", True)
    objWriter.WriteLine(Restabs)

顺便说一下,我想要的输出是

[restabs alignment =“osc-tabs-left”responsive =“false”tabcolor =“#d1d1d1”seltabcolor =“#000000”]

谢谢。

2 个答案:

答案 0 :(得分:4)

似乎你想在这个时候使用常见的双引号,那么你可以使用字符常量:

Dim qmQuotes As Char = ControlChars.Quote 

此外,您提供的代码中的问题是,您在 String.Format 中使用的{1}不存在参数索引,因为Vb。 Net索引从零开始,您应该使用{0}插入传递给参数数组的第一个参数。

String.Format("[restabs alignment={0}osc-tabs-left{0} responsive={0}false{0} tabcolor={0}#d1d1d1{0} seltabcolor={0}#000000{0}]", qmQuotes)

答案 1 :(得分:2)

为什么在使用逃避报价时会使您的生活变得复杂?你只需加倍......

Dim myString = "[restabs alignment=""osc-tabs-left"" responsive=""false"" tabcolor=""#d1d1d1"" seltabcolor=""#000000""]"