CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > Java技术

实例分析J2ME网络编程的两种方法

作者: 佚名,  出处:IT专家网论坛, 责任编辑: 包春林, 
2008-06-20 04:00
  本文描述了在J2me中开发主要使用的网络连接方法,分别详细介绍了使用http和socket两种方法。

  HttpConnection

  首先我们先来看一个简单的例子吧:

  主要用到的java包:

  

     javax.microedition.io.*;

  public String requestGET(String URLString,String URL) throws IOException{

  // =====================================

  // URLString是HTTP地址,URL为后面的参数

  // 这里的例子是发送用的用户名和密码到服务器端进行用户验证

  // 比如 String URLString = "http://192.168.0.1:8080/login.jsp";

  // String URL = "?Name="+this.txtName+"&Pass="+this.txtPass

  // =====================================

  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;

  // =====================================

  // 读取返回的HTTP内容

  // ====================================

  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;

  }

  }

共3页。 1 2 3 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2007, ChinaByte
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i