首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

求代码变换高手把java改成pb

2013-07-08 
求代码转换高手把java改成pb本帖最后由 feixianzhi 于 2013-06-01 11:48:30 编辑求大虾把这个java代码,改

求代码转换高手把java改成pb
本帖最后由 feixianzhi 于 2013-06-01 11:48:30 编辑 求大虾把这个java代码,改成pb代码,java看不懂哦。代码的主要功能就是调用那个地址发送短信,并获得返回值。
import java.io.*;
import java.net.*;
public class Postdemo {
  public static void main(String[] args) {
    try {
      URL url = new URL(“http://www.duanxinsms.net:8888/EntSms/send_lz.jsp
/ EntSms/send_lz.jsp ");
      URLConnection connection = url.openConnection();
      connection.setDoOutput(true);
      OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream(), "GBK");
String content = java.net.URLEncoder.encode(“测试”, "GBK");
out.write("name=用户名&pwd=密码&flag=sendmessage&ecode=00&phone=12345697865&content="+content);
      out.flush();
      out.close();
      DataInputStream in = new DataInputStream(connection.getInputStream());
      String inline = in.readLine();
      System.out.println(inline);
      in.close();
    }
    catch (IOException ex2) {
      System.out.println(" exe IOException:" + ex2.toString());
    }
  }
}
---------------------------------
[解决办法]
在pb中用posturl来实现

PostURL() 
功能执行HTTP   Post,这样PowerBuilder应用程序就可以通过CGI、NSAPI、ISAPI接口发送请求。 
语法servicereference.PostURL   (   urlname,   urldata,   headers,   data   ) 
参数 
servicereference:Inet对象实例或引用 
urlname:String类型,指定要发送请求的URL(统一资源定位器) 
urldata:Blob类型,指定发送给urlname参数指定的URL的参数 
headers:String类型,指定HTML首部。对Netscape浏览器来说,每个HTTP首部之后需要个换行符(~n),在所有首部之后再跟一个换行符(~n) 
data:InternetResult实例变量,用于保存返回的HTML 
返回值 
Integer。函数执行成功时返回1,发生错误时返回下述值: 
  -1一般错误 
  -2指定的URL无效 
  -4不能连接到Internet上 
  -6Internet请求无效 
用法 
该函数的data参数要求是继承了InternetResult对象的类用户对象实例,在该用户对象的定义中,需要定义覆盖函数InternetData(),用于处理Internet返回的HTML数据。由于Internet以异步方式传送数据,因此,data参数必须是某个实例变量或全局变量的引用(例如窗口级实例变量)。 
示例   下面的代码调用PostURL()。其中,Iinet_base是个Inet类型的实例变量;n_ir_msgbox是继承了InternetResult对象的类用户对象,iir_msgbox是该用户对象的一个实例: 
Blob   lblb_args 
String   ls_headers 
String   ls_url 
Long   ll_length 
ir_msgbox   =   CREATE   n_ir_msgbox 
ls_url   =   "http://coltrane.sybase.com/ " 
ls_url   +=   "cgi-bin/pbcgi60.exe/ " 
ls_url   +=   "myapp/n_cst_html/f_test? " 


lblb_args   =   blob( " ") 
ll_length   =   Len(lblb_args) 
ls_headers   =   "Content-Length:   "   +   String(ll_length)   +   "~n~n " 
iinet_base.PostURL(ls_url,   lblb_args,   ls_headers,   iir_msgbox)

热点排行