[再加工]XMLSocket(服务器+客户端)代码,包含解决中文问题
来源:互联网 发布:千里眼淘宝插件mac 编辑:程序博客网 时间:2024/05/21 07:50
转自http://blog.5d.cn/user33/ezzz/200705/401557.html
(Ezzz:本文是根据网上相关文章再加工而成)
XMLSocket(服务器+客户端)代码,包含解决中文问题
//Flash code
System.useCodepage=true;
var mySocket:XMLSocket = new XMLSocket();
//本地地址,端口3000
mySocket.connect("localhost", 3000);
//事件
mySocket.onConnect = function(myStatus) {
if (myStatus) {
trace("连接成功!");
//发送信息
mySocket.send("发送中文"+"/n");
trace("发送成功!");
} else {
trace("连接失败!");
}
};
//接受信息事件
mySocket.onData = function(msg:String) {
trace("接受到的内容:"+msg);
};
//Java code
package test;
import java.io.*;
import java.net.*;
public class LocalServer {
protected int listenPort = 3000;
public void acceptConnections() {
try {
ServerSocket server = new ServerSocket(this.listenPort);
// 在服务器端,我们需要ServerSocket对象以便建立服务,参数是兼听的端口号
Socket incomingConnection = null;// 创建一个客户端的Socket变量,以接收从客户端监听到的Socket
// handleConnection处理
System.out.println("Server端正在等待一个socket连接......");
incomingConnection = server.accept();// 调用该 ServerSocket 的
// accept()来告诉它开始侦听
System.out.println("一个socket客户端已经连接过来......");
handleConnection(incomingConnection);
} catch (BindException e) {
System.out.println("Unable to bind to port " + listenPort);
} catch (IOException e) {
System.out.println("Unable to instantiate a ServerSocket on port: "
+ listenPort);
}
}
public void handleConnection(Socket incomingConnection) {
System.out.println("/r/n正在对此连接进行处理....../n");
try {
// 首先获取同Socket相关联的流outputToSocket和InputStream
// 其中outputToSocket是要返回给客户端Socket的流
// InputStream是客户端发来的请求
OutputStream outputToSocket = incomingConnection.getOutputStream();
InputStream inputFromSocket = incomingConnection.getInputStream();
BufferedReader streamReader = new BufferedReader(
new InputStreamReader(inputFromSocket));
// 发送信息
BufferedWriter streamWriter = new BufferedWriter(
new OutputStreamWriter(outputToSocket));
streamWriter.write("<msg>GOOD BOY</msg>/0");
streamWriter.flush();
// outputToSocket.close();
// 首先要将InputStream转换到BufferedReader中
String line = null;
while ((line = streamReader.readLine()) != null) {
System.out.println("Client message is [ " + line + " ]");
streamWriter.write("来自服务器 [ " + line + " ] /0");
streamWriter.flush();
// 从streamReader中读出信息,直接输出到默认输出设备中(本例中是指dos窗口)
}
System.out.println("/r/n/r/n接受信息完毕!");
// 完成之后关闭所有流,注意关闭Socket流的顺序
streamReader.close();
} catch (Exception e) {
System.out.println("Error handling a client: " + e);
}
}
// 主程序,建立sever实例对象,然后运行对象的acceptConnections()方法
public static void main(String[] args) {
LocalServer server = new LocalServer();
server.acceptConnections();
}
}
- [再加工]XMLSocket(服务器+客户端)代码,包含解决中文问题
- 服务器接收Android客户端中文乱码解决
- tomcat中文问题(再加一招)
- 解决cmd客户端插入包含中文数据乱码
- andriod客户端与服务器中文乱码问题
- 客户端获取服务器数据中文乱码问题
- 解决 GitHub For Windows 客户端软件中代码的中文显示乱码问题 (Git/GitHub)
- Mysql默认客户端中文问题的解决
- gSoap关于string包含中文客户端显示乱码问题
- flash xmlsocket policy 问题
- linux服务器解决显示中文乱码问题
- 解决debian服务器中文显示乱码问题
- 解决tomcat服务器中文乱码问题
- nodejs 写服务器解决中文乱码问题
- Silverlight读取包含中文的txt(解决乱码问题)
- Android 解决文件名包含中文 空格和问号问题
- 关于客户端与服务器ajax使用json数据交互,出现中文乱码或因包含html标答而报错的问题(base64加密)
- 解决中文问题的过滤器的代码
- Asp.net同一页面内容分页实现
- UNIQUE key 和 Primary Key 区别
- VS2008下 VTK的安装步骤
- Linux下ipcs的10种用法
- JOZO 火车月票
- [再加工]XMLSocket(服务器+客户端)代码,包含解决中文问题
- 常用技巧
- [Linux][2011-5-25]Linux "struct stat" 结构 & stat(),lstat(),fstat()
- MemberShip在动软生成器下UserId的问题
- 错误—命令“copy "C:/../maps/*.xml" "C:/../bin/Debug/" copy "C:/../*.config" "C:/../bin/Debug/"”已退出,代码为 1。
- 动态数码管显示(C源码)
- [转] svn import 时出现类似 svn: Error converting entry in directory '/home/data/test/dev_test_com/include' to UTF-8 的解决方
- 国际:Web开发设计的五大准则
- 深入理解C++的动态绑定和静态绑定