1

我知道这一定是一个菜鸟问题,但我该怎么做呢?因为从我在这里看到的:http: //msdn.microsoft.com/en-us/library/system.io.streamwriter或 XMLWriter 对我没有帮助,因为我只想保存所有内容,而不是写特定的行。

基本上我有一个返回 XML 响应的 httpRequest。我在一个流中得到它,并且我想将它保存到一个 xml 文件中,以备后用。部分代码:

HttpWebResponse response = (HttpWebResponse)httpRequest.EndGetResponse(asynchronousResult);
            Stream streamResponse = response.GetResponseStream();
            StreamReader streamRead = new StreamReader(streamResponse);
            string responseString = streamRead.ReadToEnd();

            XDocument blabla = XDocument.Parse(responseString);

            // Here is where the saving to a file should occur

            streamResponse.Close();
            streamRead.Close();
4

3 回答 3

3

为什么需要解析文件?在 .NET 4 中,您可以使用如下文件流将其直接写入磁盘:

using (var fileStream = File.Create("file.xml"))
{
    streamResponse.CopyTo(fileStream);
}

如果您使用的是早期版本的 .NET 框架,则可以使用此处描述的方法将数据从一个流复制到另一个流。

于 2012-05-25T13:06:51.383 回答
0

由于您已经将 XML 响应作为字符串,我认为您需要使用StreamWriter类将响应字符串直接写入文件。

这里有一个使用它的 MSDN 示例:How to: Write Text to a File

于 2012-05-25T13:09:46.203 回答
0

看看这个:

http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.save.aspx

应该可以帮助您完成工作!

于 2012-05-25T13:05:28.740 回答