簡體   English   中英

如何在 C# 中轉義 "\\"String\\""

[英]How to escape "\"String\"" in C#

我正在發出POST請求,POST 請求以以下格式返回字符串:

"\"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\"",...}

調試器只是向您顯示實際的字符串值包含引號。 如果您不希望該值包含引號,您可以使用String.Replace來刪除它們。 如果您確實想要它們,那么您無事可做。

使用String.Trim()刪除字符串周圍的附加引號。 請注意,這僅適用於字符串開頭或結尾的引號。

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

如果您還需要刪除字符串其余部分之間的引號,請使用String.Replace("\\"", "")

或者,如果它總是相同的“結構”總是去掉第一個和最后一個字符,這可能會執行得更快:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM