如何一次性执行多条方法相同但是参数的不同的指令?

2Vb2eoJ 2016-10-16 12:57:04
情况如下:
自己写了一个获取网页内容的类,传递不同的参数可以获取不同网页;
想要在一个按钮事件下一次性获取三个网页的内容,
尝试把三条代码放在一起,每次只能获取到最后一个网页的内容.
求解决办法,
谢谢.
...全文
462 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
只为搞笑 2016-10-18
  • 打赏
  • 举报
回复
引用 10 楼 y716438031 的回复:
[quote=引用 7 楼 u010668114 的回复:] 用线程池负责执行获取网页的操作不就好了,话说你要做爬虫么
是的.....打算从网页上获取内容并处理什么的...... 线程池啊.....我去找一下相关的教程,谢谢提醒~ 我在楼上放出了代码,如果可以请看一下.......[/quote] 我可能理解错了你的意思,你这个先确定是处理了每个url的,然后再看看是不是和sharepreference在子线程提交有关
2Vb2eoJ 2016-10-18
  • 打赏
  • 举报
回复
引用 8 楼 u013185423 的回复:
感觉是后一次的写入的时候,把之前的清空了,你看看是不是这种情况.
有可能......不过如果用线程延时一秒再执行下一条的话就可以正常的获取并且写入文件了......
2Vb2eoJ 2016-10-18
  • 打赏
  • 举报
回复
引用 7 楼 u010668114 的回复:
用线程池负责执行获取网页的操作不就好了,话说你要做爬虫么
是的.....打算从网页上获取内容并处理什么的...... 线程池啊.....我去找一下相关的教程,谢谢提醒~ 我在楼上放出了代码,如果可以请看一下.......
2Vb2eoJ 2016-10-18
  • 打赏
  • 举报
回复
引用 6 楼 y716438031 的回复:
[quote=引用 5 楼 qq840727854的回复:][quote=引用 4 楼 qq840727854 的回复:] FileInputStream 么
说错了 FileOutputStream么[/quote] 我用的是jsoup解析html网页的,明天我截个图给你看一下[/quote] 这是获取的方法:
private void sendGainHttpData(final int i) {// 获取的方法
		new Thread(new Runnable() {
			@Override
			public void run() {
				Document doc = null;
				try {
					doc = Jsoup.connect(URL_MAIN).get();
					if (doc.select(".panel-body") != null) {
						Elements text = doc.select(".panel-body");
						Elements se = text.get(i).select("p");

						// 写入内存:serviceInfo
						serviceInfo = new ServiceInfo();// 新建对象
						String ServiceGet[] = se.get(0).text().split(":");// 服务器-获取数据,分离
						serviceInfo.setService(ServiceGet[1]);// 写入
						String PortGet[] = se.get(1).text().split(":");// 端口
						serviceInfo.setPort(PortGet[1]);
						String PasswordGet[] = se.get(2).text().split(":");// 密码
						serviceInfo.setPassword(PasswordGet[1]);
						String EncryptionGet[] = se.get(3).text().split(":");// 加密
						serviceInfo.setEncryption(EncryptionGet[1]);

						SimpleDateFormat sDateFormat = new SimpleDateFormat(
								"yyyy-MM-dd hh:mm:ss");// 读取时间
						String date = sDateFormat.format(new java.util.Date());// 格式化
						serviceInfo.setLostupdate(date);// 写入

						// 从内存读取并排列格式,加密
						String data = serviceInfo.getEncryption() + ":"
								+ serviceInfo.getPassword() + "@"
								+ serviceInfo.getService() + ":"
								+ serviceInfo.getPort();
						String data64 = "ss://"
								+ Base64.encodeToString(data.getBytes(),
										Base64.DEFAULT);// 添加前缀并加密

						// 写入文件
						SharedPreferences.Editor editor = getSharedPreferences(
								"data", MODE_PRIVATE).edit();// 定义写入文件名字
						editor.putString(region + "_service",
								serviceInfo.getService());// 服务器
						editor.putString(region + "_port",
								serviceInfo.getPort());// 端口
						editor.putString(region + "_password",
								serviceInfo.getPassword());// 密码
						editor.putString(region + "_encryption",
								serviceInfo.getEncryption());// 加密方式
						editor.putString(region + "_lostupdate",
								serviceInfo.getLostupdate());// 最后更新时间
						editor.putString(region + "_url", data64);// 密文
						editor.commit();// 提交数据
					}
				} catch (IOException e) {
				}
			}
		}).start();
	}
DiQl 2016-10-18
  • 打赏
  • 举报
回复
感觉是后一次的写入的时候,把之前的清空了,你看看是不是这种情况.
只为搞笑 2016-10-18
  • 打赏
  • 举报
回复
用线程池负责执行获取网页的操作不就好了,话说你要做爬虫么
2Vb2eoJ 2016-10-18
  • 打赏
  • 举报
回复
引用 5 楼 qq840727854的回复:
[quote=引用 4 楼 qq840727854 的回复:] FileInputStream 么
说错了 FileOutputStream么[/quote] 我用的是jsoup解析html网页的,明天我截个图给你看一下
qq840727854 2016-10-17
  • 打赏
  • 举报
回复
引用 4 楼 qq840727854 的回复:
FileInputStream 么
说错了 FileOutputStream么
qq840727854 2016-10-17
  • 打赏
  • 举报
回复
FileInputStream 么
qq840727854 2016-10-17
  • 打赏
  • 举报
回复
问题 是 你是 怎么写的
2Vb2eoJ 2016-10-17
  • 打赏
  • 举报
回复
引用 1 楼 zhuchenglin830 的回复:
可以把三个网页地址拼接成一个string,然后再使用的时候截取成三个string,然后给三个webview分别设置网页地址,试试这个方法!
唔....情况是这样的: 我写了一个类GetData,用于从一个网页获取特定的内容并写入到xml文件; 现在的要求是,在一个按钮点击事件里,一次性获取三个不同网页的内容并写入文件(要调用GetData三次,每次传入不同的URL) 我在按钮事件里new了一个线程,执行一次GetData就sleep(200) 结果还是不行,打开xml文件里面发现只是写入了最后一次读取的内容(不同URL写入的数据键值不相同,不会覆盖)
林一天 2016-10-16
  • 打赏
  • 举报
回复
可以把三个网页地址拼接成一个string,然后再使用的时候截取成三个string,然后给三个webview分别设置网页地址,试试这个方法!

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧