如何在c#中转义“ \” String \“”?

时间:2019-01-03 17:20:38

标签: c# string

我正在发出发布请求,发布请求以这种格式返回字符串

"\"1231231231323213\""

我需要使用此字符串进行另一个呼叫。

当我这样做

var NewLocationId = response.Content;
Logger.LogInfo($"LocationID : {NewLocationId}");

我明白了

  

LocationID:“ 1231231231323213”

但是当我调试它时,NewLocationId的值为"\"1231231231323213\""

当我在请求调用中使用NewLocationId的值时,json如下所示。

{"locationId":"\"1231231231323213\""}

我如何逃离"\"1231231231323213\"""1231231231323213"

编辑:

var response = Call.PostNewLocation(SomeValue123, SomeValue1234, null, SomeValue);
var NewLocationId = response.Content;
Logger.LogInfo($"LocationID : {NewLocationId}");
var responseDevice = Call.PostNewDevice(SomeValue, SomeValue22, SomeValue3, SomeValue1, NewLocationId);

当我尝试使用上述调用中的响应内容时,我正在获取此字符串"1231231231323213",调试器将显示"\"1231231231323213\""

然后当我在下一个呼叫中使用NewLocationId时,json如下所示。

{...,"locationId":"\"1231231231323213\"",...}

2 个答案:

答案 0 :(得分:2)

调试器仅向您显示实际的字符串值包含引号。如果您不希望该值包含引号,则可以使用String.Replace删除引号。如果您想要想要他们,那您就什么也不需要做。

答案 1 :(得分:1)

使用String.Trim()删除字符串周围的其他引号。请注意,这仅适用于字符串开头或结尾的引号。

NewLocationId = NewLocationId.Trim('\"');

如果您还需要删除字符串其余部分之间的引号,请使用String.Replace("\"", "")

或者,如果它始终是相同的“结构”,则总是去除第一个字符和最后一个字符,则执行起来可能会更快:

NewLocationId = NewLocationId.Substring(1, NewLocationId.Length - 2);