读书人

急(赏格高分)j2me获取网页数据

发布时间: 2011-11-18 22:58:52 作者: rapoo

急!(悬赏高分)j2me获取网页数据。
J2ME 获取网络数据

运行j2me程序, 后台访问网页,获取网页中的每一行中文并存在数组里

最后通过 g.drawString 将这一串中文数组 显示到手机屏幕上 。 (网页格式UTF-8)


很急 很急!!在线等!!!


[解决办法]
public String requestGET(String URLString,String URL) throws IOException{
HttpConnection hpc=null;
DataInputStream dis=null;
boolean newline=false;
String content="";
try
{
hpc=(HttpConnection)Connector.open(URLString+URL);
hpc.setRequestMethod(HttpConnection.GET);
dis =new DataInputStream(hpc.openInputStream());
int character;
while((character=dis.read())!=-1)
{
if((char)character=='\\')
{
newline=true;
continue;
}
else{
if((char)character=='n'&& newline)
{
content+="\n";
newline=false;
}

else if(newline)
{
content+="\\"+(char)character;
newline=false;
}
else{
content+=(char)character;
newline=false;
}
}
}
}
catch(IOException e)
{
System.out.print("ERROR:"+e);
}
finally
{
if(hpc!=null){
hpc.close();
hpc=null;
}

if(dis!=null)
{
dis.close();
}
}

content=(unicodeTogb2312(content)).trim();
return content;
}

public static String unicodeTogb2312(String s){
if(s==null){return "";}
if(s.equals("")){return s;}
try{
return new String(s.getBytes("ISO8859_1"),"gb2312");
}
catch(Exception uee)
{
return s;
}
}


这个应该可以吧
[解决办法]
关键是现在不知道你整个网页中除了这个天气外还有什么别的标签?有别的img吗?有别的诸如“/>/”这样的吗?如果没有的话我可以举个例子,你根据你的实际情况,改变对字符串的截取

Java code
public class TestStr {    public static void main(String args[]){        String string = "<img src='imag/zhenyu.png'/>~ <img src='imag/yin.png'/>/阵雨转阴 <br /> 气温:30 ~ 22 ℃ <br />";        String temperature;        String weather;        int i;        int j;        i = string.indexOf("<br />");        j = string.indexOf("/>/");        weather = string.substring(j+"/>/".length(), i-1);        System.out.println(weather);        string = string.substring(i+"<br />".length(),string.length());        i = string.indexOf("<br />");        temperature = string.substring(" 气温:".length(),i-1);        System.out.println(temperature);    }} 

读书人网 >J2ME开发

热点推荐