从包含十六进制和十进制值的字符串中输出数字

Output numbers from a string containing hex and decimal values

我正在从网站上抓取数据,以便为我的同事获取有用的数据,而不必经常刷新页面。

C# 代码直接从 HTML 中提取数据。但是数据以一种奇怪的方式加密,并且returns作为一个非人类可读的字符串,这对我们没有帮助。

例如,在table中,产品编号可能显示为“14501219”。在 HTML 中,包含数据的元素的内部文本是“14501219”。

我需要知道如何:

  1. 从同一个字符串中将十六进制和十进制解析为 int
  2. 将这些结果附加到最终输出

到目前为止我已经完成了这个伪代码,但我不知道它在 C# 中的样子或使用什么转换方法:

for (int i = 0; i < inputString.Length; i++)
   {
      if (inputString[i] = '&' && inputstring[i+1] = '#')
           {
                if (inputstring[i+2 = 'x'
                {
                     //convert to hex
                     //append to outputList
                }
                else
                {
                    //convert to decimal
                    //append to outputList
                }
            }
      else
            {
                 //convert to string literal
            }
   }

如有任何帮助,我们将不胜感激

在你添加了字符串文字示例后,我将新添加你的内容 seeing/asking。为了让 http 客户端不被某些特殊字符绊倒,他们使用 acsii 表示形式进行编码。大多数框架都有一种处理编码 url 的方法。例如,在 c# 中,您应该始终确保在读取和写入时在内部使用 HttpUtility.UrlDecode and HttpUtility.UrlEncode