HTMLNodo del número de línea / posición en HTML Agility Pack

c# html-agility-pack winforms

Pregunta

Estoy tratando de encontrar el HtmlNode correspondiente para una posición de Línea / Carácter dada (Ej. Línea 5, carácter 12). He mirado alrededor de la documentación de ayuda, pero no estoy muy seguro de que esté disponible.

¿Es posible hacer esto en el paquete de agilidad de HTML?

EDITAR:

Ejemplo de archivo HTML:

<!DOCTYPE html>
<html>
<body>

<h4>An Ordered List:</h4>
<ol>
  <li>Coffee</li>
  <li>Tea</li>
  <li>Milk</li>
</ol>

</body>
</html>

Estoy intentando obtener la línea de posición 7, el carácter 5 -> Café LI y la línea 12, recuperar el nodo.

Respuesta popular

Si está hablando del HTML en la línea 5, posición 12, podría hacer algo como esto:

private void button1_Click_1(object sender, EventArgs e)
{
    HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
    HtmlAgilityPack.HtmlDocument doc;
    doc =  web.Load("http://slashdot.org");


    var node = CheckLine(doc.DocumentNode);
    if (node != null)
        MessageBox.Show(node.OuterHtml);
}

private HtmlAgilityPack.HtmlNode CheckLine(HtmlAgilityPack.HtmlNode node)
{
    if (node.Line == 5 && node.LinePosition < 12 && ((node.LinePosition + node.OuterHtml.Length) > 12))
        return node;

    foreach (var n in node.ChildNodes)
    {
        var val = CheckLine(n);
        if (val != null)
            return val;
    }
    return null;
}


Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué