易截截图软件、单文件、免安装、纯绿色、仅160KB

Java利用MSNP协议登录MSN

请参见上一篇文章,登录MSN协议
具体Java实现:
命令序列:<<代表发送,>>代表结果
1.连接DS(Dispatcher Server),得到NS(Notification Server)
<<VER 1 MSNP18 CVR0
>>VER 1 MSNP18
<<CVR 2 0x0804 winnt 5.1 i386 MSNMSGR 14.0.8089.0726 msmsgs yourAccount
>>CVR 2 14.0.8089 14.0.8089 14.0.8089 http://msgruser.dlservice.microsoft.com/download/0/9/7/0974F7CD-D082-46FE-922D-806670345793/zh-chs/wlsetup-cvr.exe http://download.live.com/?sku=messenger
<<USR 3 SSO I yourAccount
>>XFR 3 NS 207.46.124.86:1863 U D
private String dsHost = "64.4.9.254";//ds host
private String nsHost;//ns host
private int port = 1863;//port
private int trId = 1;//命令序列号
private String ticketToken;//在获取联系人时用
//得到向MSN服务器发送的命令
private String getMSNCommand(String cmd, String ... args) {
StringBuilder sb = new StringBuilder();
sb.append(cmd).append(' ');
sb.append(trId++).append(' ');
for (int i = 0; i < args.length; i++) {
if (i < args.length - 1) {
sb.append(args[i]).append(' ');
} else {
sb.append(args[i]);
}
}
sb.append("\r\n");
return sb.toString();
}
//初始化NS地址
private void initNSHost() throws TelnetException {
NonBlockTelnetClient client = new NonBlockTelnetClient(dsHost, port);
client.connect();
String cmd = getMSNCommand("VER", "MSNP18", "CVR0");
client.sendCommand(cmd);
String resp = client.getOutputByLine();
System.out.println("resp=" + resp);
cmd = getMSNCommand("CVR", "0x0804", "winnt", "5.1", "i386", "MSNMSGR", "14.0.8089.0726", "msmsgs", username);
client.sendCommand(cmd);
resp = client.getOutputByLine();
System.out.println("resp=" + resp);
cmd = getMSNCommand("USR", "SSO", "I", username);
client.sendCommand(cmd);
resp = client.getOutput


相关文档:

传智播客java学习 lucene初步

因为即将要学习lucene,所以我提前预习了lucene的相关知识,
1,lucene是众多搜索引擎中的一个,就像持久层除了Hibernate外也有很多其它框架
一样。Lucene是一个开发工具包,我们可以使用他为应用程序添加全文检索的功能。
2,目前已经有很多应用程序的搜索功能是基于 Lucene 的,比如 Eclipse 的帮助系
统的搜索功能。 ......

java去除字符串中的空格、回车、换行符、制表符

java去除字符串中的空格、回车、换行符、制表符
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtil {
public static void replaceBlank()
{
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
String str="I am a, I am Hello ok, \n new line ffdsa!";
System.out.p ......

几个java类的区别

Java面试中,最常被人问到的几个问题:
1. java.util.*包的UML结构图。
2. Vector和ArrayList、LinkedList区别  Hashtable 和 HashMap之间的区别
3. String、StringBuffer,StringBuilder之间区别。
--回答--
1.
Collection
  |
  |_List
  |  |_LinkedList
  |  | ......

Java面试题汇总(基础方面)

1.列举出 10个JAVA语言的优势
a:免费,开源,跨平台(平台独立性),简单易用,功能完善,面向对象,健壮性,多线程,结构中立,企业应用的成熟平台, 无线应用
2.列举出JAVA中10个面向对象编程的术语
a:包,类,接口,对象,属性,方法,构造器,继承,封装,多态,抽象,范型
3.列举出JAVA中6个比较常用的包
Java. ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号