【问题标题】:how to save a url as a html page on the server如何在服务器上将 url 保存为 html 页面
【发布时间】:2018-11-03 12:09:45
【问题描述】:

我有一个 url,在输入这​​个 url 时,我得到一个 html 页面。我想要的是从该 url 将该 html 页面保存在服务器上。这是代码-

 protected void one_Click(object sender, EventArgs e)
    {
        string s = textbox.Text;
        var code = s.Split(new[] { "mailerhtml" }, StringSplitOptions.None)[1];
        string product = code.Replace(@"/", string.Empty);
}

在上面的代码中,我输入了一个 url,并且在一个按钮(一个)的 one_Click 上,我将文本框文本保存在字符串 's' 中。 此外,变量“代码”用于获取我将用来保存 html 页面的名称。例如,如果代码是'abc',我会将其保存为 code.html 现在,我的服务器上有一个名为“HTMLPages”的文件夹,我想将 html 页面保存在这个文件夹中。我怎样才能做到这一点?

【问题讨论】:

标签: c# .net


【解决方案1】:

您必须为此使用网络客户端,它会下载它,您可以在任何地方编写文件。

 WebClient myClient = new WebClient();
        string myPageHTML = null;
        byte[] requestHTML; 
        // Gets the url of the page
        string currentPageUrl = Request.Url.ToString();

        UTF8Encoding utf8 = new UTF8Encoding();

        // by setting currentPageUrl to url it will fetch the source (html) 
        // of the url and put it in the myPageHTML variable. 

       // currentPageUrl = "url"; 

        requestHTML = myClient.DownloadData(currentPageUrl);

        myPageHTML = utf8.GetString(requestHTML); 

        System.IO.File.WriteAllText(@"C:\yoursite.html", myPageHTML);

【讨论】:

  • 而不是这个 - (@"C:\yoursite.html", myPageHTML);我想使用 Server.MapPath
  • 我没有收到此代码。我已经在文本框中输入了 url,对于那个 url,我想要它的 html 页面。 @约翰
  • loll @john.. 是否要使用 server.mappath 或任何其他方法取决于您自己
  • 什么都没有得到保存。我没有问任何复杂的事情。我在文本框中输入了一个 url,我只想将该 url 转换为 html 页面并将其保存在服务器上
  • 将您的文本框值参数 s 设置为 currentPageUrl,然后尝试这样做会起作用
猜你喜欢
  • 2013-04-30
  • 2011-04-16
  • 1970-01-01
  • 2016-08-29
  • 1970-01-01
  • 2018-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多