C#控制台将网页输出到JSON

时间:2013-07-03 15:12:40

标签: c# json http

我使用以下代码获取网页。 (从智能程序员复制。学习并停止讨厌MSFT)。现在我有两个问题。

  1. 输出的格式是什么,即纯HTML或JSON
  2. 如果它不是JSON,那么如何将输出转换为JSON并导出为CSV。

    namespace getre
    {
        class Class1
        {
            static void Main(string[] args)
            {
                string sURL;
                sURL = "http://www.tutorialspoint.com/csharp/csharp_basic_syntax.htm";
    
                WebRequest wrGETURL;
                wrGETURL = WebRequest.Create(sURL);
    
                WebProxy myProxy = new WebProxy("myproxy", 80);
                myProxy.BypassProxyOnLocal = true;
    
                wrGETURL.Proxy = WebProxy.GetDefaultProxy();
    
                Stream objStream;
                objStream = wrGETURL.GetResponse().GetResponseStream();
    
                StreamReader objReader = new StreamReader(objStream);
    
                string sLine = "";
                int i = 0;
    
                while (sLine != null)
                {
                    i++;
                    sLine = objReader.ReadLine();
                    if (sLine != null)
                        Console.WriteLine("{0}:{1}", i, sLine);
                }
                Console.ReadLine();
            }
        }
    }
    

1 个答案:

答案 0 :(得分:1)

控制台应用的输出是一个自定义格式,由响应内容的每一行的行号和行内容(用':'分隔)组成(排除任何null行!?)

如果要在处理之前检查内容类型,则可以插入以下行:

WebResponse response = wrGETURL.GetResponse();

string contentType = response.ContentType;

如果你很幸运,服务器/程序员会在目标网站的响应中设置它,它可能是“text / html”或“application / json”。