【问题标题】:C# Mapping from absolute html hyperlink to local path: How?从绝对 html 超链接到本地​​路径的 C# 映射:如何?
【发布时间】:2019-11-01 20:08:24
【问题描述】:

以前的一位同事下载了我们旧公司常见问题解答的大部分内容并将文件保存为 html。

我需要找到一种方法,将所有绝对超链接替换为相对于根目录保存文件的相关位置。

例如如果文件保存在 c:\faq 我需要一种方法将所有链接从 https://corporatewebsitefaq.com 更改为 c:\faq。

另一个例子是一个链接可能指向主页(例如https://corporatewebsitefaq.com/index.html),但这个链接是一个子文件夹,比如 c:\faq\subfolder\page.html。我需要将此链接更新为 c:\faq\index.html

此外,链接已在几个驱动器上移动,因此原始文件夹结构不再有效。

使用 HTMLAgility Pack 我可以检索所有页面中的所有链接,这只是导致我出现问题的所有子文件夹中所有文件之间的实际映射。

我玩弄了 URI 对象,但似乎无法确定它。

感谢您的帮助 标记

【问题讨论】:

    标签: c# html web


    【解决方案1】:

    为什么不直接用本地路径替换 url?

    text.Replace("http://....", "c:/faq/"):

    【讨论】:

      猜你喜欢
      • 2011-02-14
      • 2020-02-14
      • 1970-01-01
      • 2020-09-07
      • 1970-01-01
      • 2018-01-22
      • 2020-08-07
      • 2016-11-21
      • 2013-11-30
      相关资源
      最近更新 更多