2

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

当我在 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)

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

[retabs 对齐 =“osc-tabs-left”响应 =“假”tabcolor =“#d1d1d1”seltabcolor =“#000000”]

谢谢你。

4

2 回答 2

4

看来这次你想使用常见的双引号,那么你可以使用字符常量:

Dim qmQuotes As Char = ControlChars.Quote 

此外,您提供的代码中的问题是您{1}String.Format中使用不存在的参数索引,因为 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)
于 2016-03-25T08:32:28.547 回答
2

当您可以使用转义引号时,为什么要使您的生活复杂化?你只需要加倍...

Dim myString = "[restabs alignment=""osc-tabs-left"" responsive=""false"" tabcolor=""#d1d1d1"" seltabcolor=""#000000""]"
于 2016-03-25T12:13:49.293 回答