有一个网站,其中有几个下拉框。我制作了一个Android应用程序,从网站上提取值。现在网站上有一个搜索框,在网站中我们可以从框中选择选项并按提交,然后根据所选的选项给出结果。我需要在我的应用程序中执行相同操作。 需要帮助。谢谢
答案 0 :(得分:4)
要将数据发布到网站,您已向其发送HTTP POST请求。您可以将要发送的数据放入数组中并将其发送到php脚本。
您必须弄清楚您的String发送到服务器的ID。在我的示例中,它是your_1和your_2。这与每个网站不同。所有新浏览器都可以在开发者控制台或其他东西中阅读。
public void postData() {
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("your_1", "data 1"));
nameValuePairs.add(new BasicNameValuePair("your_2", "data 2"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
发送完毕后,您必须获得可以使用StringBuilder读取的响应。
private StringBuilder inputStreamToString(InputStream is) {
String line = "";
StringBuilder total = new StringBuilder();
// Wrap a BufferedReader around the InputStream
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
// Read response until the end
while ((line = rd.readLine()) != null) {
total.append(line);
}
// Return full string
return total;
}
现在您有了回复,您可以使用RegEx强调您的特殊文本。这有点棘手但this会对你有所帮助。