Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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
C# C HTTP GET请求返回隐藏字符_C#_.net_Regex_Httpwebresponse_Streamreader - Fatal编程技术网

C# C HTTP GET请求返回隐藏字符

C# C HTTP GET请求返回隐藏字符,c#,.net,regex,httpwebresponse,streamreader,C#,.net,Regex,Httpwebresponse,Streamreader,我正在尝试从web服务器获取一些数据。当我通过浏览器浏览时,我会看到如下响应: [ { "x": "1" ,"y" : "2" ,"z" : "3" } ] 当我发送GET请求时,返回结果: [ {\n\"x\": \"1\"\n,\"y\" : \"2\"\n,\"z\" : \"3\"\n\n}\n]\n" 我使用的代码基本上是: // Create a request for the URL. WebRequest request = WebRequest.Create(fullUr

我正在尝试从web服务器获取一些数据。当我通过浏览器浏览时,我会看到如下响应:

[ { "x": "1" ,"y" : "2" ,"z" : "3" } ] 
当我发送GET请求时,返回结果:

[ {\n\"x\": \"1\"\n,\"y\" : \"2\"\n,\"z\" : \"3\"\n\n}\n]\n"
我使用的代码基本上是:

// Create a request for the URL.
WebRequest request = WebRequest.Create(fullUrl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// Get the stream containing content returned by the server.
Stream dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
是否有一种简单的方法可以在之前除去\n和\或必须对响应执行一些正则表达式/字符串操作

谢谢, 意志

可能是您在VisualStudio调试器中看到的。你不需要扔掉任何东西。此外,您还可以稍微简化代码,因为示例中所有未经处理的资源都可能泄漏非托管句柄:

using (var client = new WebClient())
{
    string responseFromServer = client.DownloadString(fullUrl);
}
可能是您在VisualStudio调试器中看到的。你不需要扔掉任何东西。此外,您还可以稍微简化代码,因为示例中所有未经处理的资源都可能泄漏非托管句柄:

using (var client = new WebClient())
{
    string responseFromServer = client.DownloadString(fullUrl);
}

引号前的“\”只是您将在调试器中看到的,它表示一个转义引号-没有问题,因为它仅用于显示目的,在执行字符串操作时不会作为字符出现

“\n”字符是一个新行字符,它实际上在那里。如果不希望它出现在字符串中,可以通过以下操作将其删除:

responseFromServer = responseFromServer.Replace("\n", string.Empty);

引号前的“\”只是您将在调试器中看到的,它表示一个转义引号-没有问题,因为它仅用于显示目的,在执行字符串操作时不会作为字符出现

“\n”字符是一个新行字符,它实际上在那里。如果不希望它出现在字符串中,可以通过以下操作将其删除:

responseFromServer = responseFromServer.Replace("\n", string.Empty);
这是IDE对字符串的表示,就像在代码中使用它时一样,其中 \n表示换行符,如果转义引号,则浏览器也会接收相同的字符串,但它会将换行符显示为空格:

这是IDE对字符串的表示,就像在代码中使用它时一样,其中 \n表示换行符,如果转义引号,则浏览器也会接收相同的字符串,但它会将换行符显示为空格: