ssummeraw 2013-09-22 06:20 采纳率: 10%
浏览 1427

把Jsoup元素转换成字符串类型

我想把android程序里Jsoup中的元素转换成字符串类型,那样的话我就能减去两个。我不确定如何实现。代码如下:

public class TestStation extends Activity {
String URL = "http://lapi.transitchicago.com/api/1.0/ttarrivals.aspx?key=201412abc85d49b2b83f907f9e329eaa&mapid=40380";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        setContentView(R.layout.test_station);
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy); 



Document doc = null;

TextView tv = (TextView) findViewById(R.id.tv);

 string ta = ta;

try {
    doc = Jsoup.connect(URL).userAgent("Mozilla/5.0 (Macintosh; U; Intel Mac OS X; de-de) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10").get();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Elements elem = doc.select("eta");
for (Element div : elem)
    tv.setText(div.text());

Elements elemn = doc.select("eta"); for (Element div : elem) {
Elements arrT = div.select("arrT");
Elements prdt = div.select("prdt");


SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
Date date = sdf.parse(prdt);

}

给出一个编译错误,说 prdt 不能从一个 Element 转变成一个 string。如何解决这个问题?

  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-16 13:15
    关注

    该回答引用ChatGPT

    要将 Jsoup 中的元素转换为字符串类型,您可以使用 Element.text() 方法。例如,要将 prdt 元素转换为字符串,您可以使用以下代码:

    String prdtString = prdt.text();
    

    然后您可以将 prdtString 用于您的其他用途。另外,请注意,sdf.parse() 方法需要一个字符串类型的参数,因此您需要使用 prdtString 而不是 prdt。


    以下是您提供的代码的修改版本:

    Document doc = null;
    TextView tv = (TextView) findViewById(R.id.tv);
    
    try {
        doc = Jsoup.connect(URL).userAgent("Mozilla/5.0 (Macintosh; U; Intel Mac OS X; de-de) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10").get();
    } catch (IOException e) {
        e.printStackTrace();
    }
    
    Elements elem = doc.select("eta");
    for (Element div : elem) {
        Elements arrT = div.select("arrT");
        Elements prdt = div.select("prdt");
    
        String prdtString = prdt.text(); // 将 prdt 元素转换为字符串类型
        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
        try {
            Date date = sdf.parse(prdtString); // 使用字符串类型的 prdtString
        } catch (ParseException e) {
            e.printStackTrace();
        }
        
        tv.setText(div.text());
    }
    

    请注意,您的代码中有一个错误,即在第 13 行,string ta = ta 是无效的语法。如果您不需要使用 ta 变量,请将其删除。如果您需要使用它,请将其初始化为您需要的值。

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题