2
    <h2>This is a heading</h2>
        <p>My mother has 
        <span style="color:blue;font-weight:bold">blue</span>
        eyes and my father has 
        <span style="color:darkolivegreen;font-weight:bold">
        dark green</span> 
        eyes.</p>
<h3>This is another heading<h3>
<p>This is a paragraph</p>

「私の母は青い目をしていて、私の父は濃い緑色の目をしています。」JSOUP を使用してこのセンテンスを解析し、同じものを太字で色付きのテキストで Android テキストビューに出力したいと考えています。ここで「青」は太字で青色です。「ダークグリーン」は大胆で色っぽい。

上記の html コードを解析する必要があり、次のように表示する必要があります。

これは見出しです
私の母は青い目をしており、私の父は濃い緑色の目をしています
これは別の見出し
です これは段落です

以下は私のプログラムです。Document doc == get above html; を考慮すると、

    Elements eHeadder = doc.select("*");
    for (Element eHead : eHeadder) {
    String tag = eHead.tagName();
    if (tag.equals("p")) {
    String pText = eHead.text();
    tv.setText(pText);
    }else if(tag.equals("h2")){
      String pText = eHead.text();
      tv.setText(pText);
      }else if(tag.equals("h3")){
      String pText = eHead.text();
      tv.setText(pText);
      }
   }
  1. 誰でも解決策を手伝ってもらえますか?
  2. doc.select("p") と doc.select("p").first; の使用に混乱しています。これも返信の際に説明していただけますか?
4

1 に答える 1

5

これはあなたが言っていることですか?

public static void main(final String[] args)
{
    final String html = "<p>My mother has\n" +
            "<span style=\"color:blue;font-weight:bold\">blue</span>\n" +
            "eyes and my father has\n" +
            "<span style=\"color:darkolivegreen;font-weight:bold\">\n" +
            "dark green</span>\n" +
            "eyes.</p>\n" +
            "<h2>Mr. <span style=\"color:green\">Foobar</span></h2>";

    final Document document = Jsoup.parse(html);

    final Elements textNodes = document.select("p,h2");

    for (final Element element : textNodes)
    {
        System.out.println("Found: " + element.text());

        System.out.println("\t Neasted Spawns:");
        for (final Element span : element.select("span"))
        {
            System.out.println("\t\t css: " + span.attr("style"));
        }
    }
}

それは印刷されます:

Found: My mother has blue eyes and my father has dark green eyes.
     Neasted Spawns:
         css: color:blue;font-weight:bold
         css: color:darkolivegreen;font-weight:bold
Found: Mr. Foobar
     Neasted Spawns:
         css: color:green
于 2013-09-08T14:44:00.430 に答える