Java 通过BlackBerry发送帖子数据后获取HTML响应

Java 通过BlackBerry发送帖子数据后获取HTML响应,java,networking,blackberry,blackberry-jde,Java,Networking,Blackberry,Blackberry Jde,我需要从一个URL中读取一个HTML响应,然后将其发送到POST数据。我已经有以下两个功能,但我不知道如何组合它们,以便发送POST数据并获得响应 此函数获取标准HTML响应: public static String getDataFromUrl(String url) throws IOException { System.out.println("------------FULL URL = " + url + " ------------"); StringBuffer

我需要从一个URL中读取一个HTML响应,然后将其发送到POST数据。我已经有以下两个功能,但我不知道如何组合它们,以便发送POST数据并获得响应

此函数获取标准HTML响应:

public static String getDataFromUrl(String url) throws IOException {
    System.out.println("------------FULL URL = " + url + " ------------");
    StringBuffer b = new StringBuffer();
    InputStream is = null;
    HttpConnection c = null;

    long len = 0;
    int ch = 0;
    c = (HttpConnection) Connector.open(url);
    is = c.openInputStream();
    len = c.getLength();
    if (len != -1) {
        // Read exactly Content-Length bytes
        for (int i = 0; i < len; i++)
            if ((ch = is.read()) != -1) {
                b.append((char) ch);
            }
    } else {
        // Read until the connection is closed.
        while ((ch = is.read()) != -1) {
            len = is.available();
            b.append((char) ch);
        }
    }

    is.close();
    c.close();
    return b.toString();
}

因此,我需要知道如何组合它们,以便在发送POST数据后获得响应。

尝试以下代码,并让我知道ant问题

注意:Url扩展非常重要(此处我仅用于wifi,例如:“interface=wifi”)

您可以根据需要调用上述函数

HttpPostSample post=new HttpPostSample(url);

您可以在console parseResults方法中看到输出(紧急!)是我不知道的一些新技术吗?老实说,描述中的这些东西根本帮不了你。如果你需要专业人士的紧急帮助,那就由你出钱,袖手旁观。对不起,我太傻了。只是我在程序中忽略了这个问题,我需要尽快找到解决方法。
import java.io.InputStream;
import java.io.OutputStream;

import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;

import net.rim.blackberry.api.browser.URLEncodedPostData;
import net.rim.device.api.io.http.HttpProtocolConstants;

public class HttpPostSample {
    HttpConnection hc = null;
    StringBuffer stringBuffer = new StringBuffer();
    InputStream inputStream;

    public HttpPostSample(String url) {
        try{
            hc = (HttpConnection)Connector.open(url+";interface=wifi");//you have to use connection extension ";interface=wifi" this is only for wifi 
            URLEncodedPostData oPostData = new URLEncodedPostData(URLEncodedPostData.DEFAULT_CHARSET, false);
            //These are your appending values and tags 
            oPostData.append("property_id","value");
            oPostData.append("property_name","value");
            oPostData.append("category","value");
            oPostData.append("address","value");
            oPostData.append("country","value");
            hc.setRequestMethod(HttpConnection.POST);
            hc.setRequestProperty(HttpProtocolConstants.HEADER_CONTENT_TYPE, oPostData.getContentType());
            byte [] postBytes = oPostData.getBytes();
            hc.setRequestProperty(HttpProtocolConstants.HEADER_CONTENT_LENGTH, Integer.toString(postBytes.length));
            OutputStream strmOut = hc.openOutputStream();
            strmOut.write(postBytes);
            strmOut.flush();
            strmOut.close();

            String returnMessage = hc.getResponseMessage();
            System.out.println("============"+returnMessage);
            if(hc.getResponseCode()==HttpConnection.HTTP_OK)
            {
                inputStream = hc.openInputStream();
                int c;
                while((c=inputStream.read())!=-1)
                {
                    stringBuffer.append((char)c);
                }
                System.out.println(">>>>>>>>>>>>>>>>>"+stringBuffer.toString());
                parseResults(stringBuffer.toString());

            }else{
                parseResults("ERROR");
            }


        }catch (Exception e) {
            // TODO: handle exception
        }
    }
    private void parseResults(String response)
    {
        if(response.equalsIgnoreCase("ERROR"))
        {
            System.out.println("Error in Connection please check your internet and Connection extension");
        }else{
            System.out.println(response);
        }
    }

}
HttpPostSample post=new HttpPostSample(url);