62,628
社区成员
发帖
与我相关
我的任务
分享
package s_port_package_BeiJing;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.HashMap;
import java.util.Map;
/**
* 剪切板工具类
*
* @author NeverChange
*
*/
public class SocketClient {
public Socket getS() {
return s;
}
public void setS(Socket s) {
this.s = s;
}
static Socket s;
private InputStream in;
private OutputStream out;
private BufferedInputStream inByte;
private OutputStream outByte;
private BufferedReader inStr;
private PrintWriter outStr;
public String MyObjIP = "";
private long size = 0;private ServerSocket ss = null;
private Map<Socket, BufferedReader> rm = new HashMap<Socket, BufferedReader>();
private Map<Socket, PrintWriter> wm = new HashMap<Socket, PrintWriter>();
String MyKey = "CJCO5888CJCO";
BufferedReader br = null;
PrintWriter pw = null;
public SocketClient(String ip, int port) {
try {
s = new Socket(ip, port);
if(port == 9911)//只要连接端口是9911的,我就在这停下,然后看代码的堆栈,就知道哪地方哥哥,堆栈怎么看,您能告诉弟吗?
{
//System.out.println("开始连接9911端口了,请注意");
}
//System.out.println(s);
in = s.getInputStream();
out = s.getOutputStream();
MyObjIP = ip;
inByte = new BufferedInputStream(in);
outByte = out;
inStr = new BufferedReader(new InputStreamReader(in));
outStr = new PrintWriter(new OutputStreamWriter(out));
} catch (Exception e) {
}
}
public String readStr() throws IOException {
if (null == (br = rm.get(s))) {
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
rm.put(s, br);
}
String str0 = br.readLine();
str0 = Systemcrypt.Recovery(str0,"CJCO");
synchronized (this.in) {
String str = this.inStr.readLine();
// return str = Systemcrypt.Recovery(str,"CJCO");
return str;
}
}
public void writeStr(String content, String MyThreadname,int myfuct,String MyObjNum,Socket s) throws NullPointerException{
MyThreadname = String.valueOf(Recv.MySystemserialnum);
if(this.out==null){
try {
// System.out.println(""myPort);
s = new Socket(Recv.Y_PORT_SERVER, 10018);
out = s.getOutputStream();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
outStr = new PrintWriter(new OutputStreamWriter(out));
synchronized (this.out) {
/* String IP = GetMyUserIP.getMyIP();
//content = content.replaceAll("\n", "<br>");
*/ InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
synchronized (this.out) {
String IP = GetMyUserIP.getMyIP();
content = content.replaceAll("\n", "<br>");
String str = content+"丗"+"C"+Recv.MySystemserialnum+"1" + "1" + "丗" + MyThreadname+MyObjNum;
// Stir = Systemcrypt.HloveyRC4(str, "CJCO");
outStr.println(str);//因为println默认会在每行的后面加上/r/n,所以不需要再重复加了,避免不必要的影响
// //////////System.out.println("=============================||||||||||||||||||||||||||||||||||||||||||||"+content+"丗"+IP+"丗"+MyThreadname);
outStr.flush();
}}
}public void writeStr(String content, String MyThreadname,int myfuct,String MyObjNum,Socket s) throws NullPointerException{
MyThreadname = String.valueOf(Recv.MySystemserialnum);
if(this.out==null){
try {
// System.out.println(""myPort);
s = new Socket(Recv.S_PORT_SERVER, 10018);
out = s.getOutputStream();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
outStr = new PrintWriter(new OutputStreamWriter(out));
synchronized (this.out) {
/* String IP = GetMyUserIP.getMyIP();
//content = content.replaceAll("\n", "<br>");
*/ InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
synchronized (this.out) {
String IP = GetMyUserIP.getMyIP();
content = content.replaceAll("\n", "<br>");
String str = content+"丗"+"C"+Recv.MySystemserialnum+"1" + "1" + "丗" + MyThreadname+MyObjNum;
// Stir = Systemcrypt.HloveyRC4(str, "CJCO");
outStr.println(str);//因为println默认会在每行的后面加上/r/n,所以不需要再重复加了,避免不必要的影响
// //////////System.out.println("=============================||||||||||||||||||||||||||||||||||||||||||||"+content+"丗"+IP+"丗"+MyThreadname);
outStr.flush();
}}
}} package s_port_package_BeiJing;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;
public class SocketServer {
private ServerSocket ss = null;
private Map<Socket, BufferedReader> rm = new HashMap<Socket, BufferedReader>();
private Map<Socket, PrintWriter> wm = new HashMap<Socket, PrintWriter>();
String MyKey = "CJCO5888CJCO";
BufferedReader br = null;
PrintWriter pw = null;
public SocketServer(int port) {
try {
ss = new ServerSocket(port);
} catch (IOException e) {
e.printStackTrace();
}
}
public Socket nextSocket() {
Socket s = null;
try {
s = ss.accept();
} catch (Exception e) {
}
System.out.println(" $$$$$$$$$$$$$$$$$ "+s);
return s;
}
public String read(Socket s) throws IOException {
if (null == (br = rm.get(s))) {
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
rm.put(s, br);
}
String str = br.readLine();
str = Systemcrypt.Recovery(str,"CJCO");
return str;
}
public void write(Socket s, String content) throws IOException {
if (null == (pw = wm.get(s))) {
pw = new PrintWriter(new OutputStreamWriter(s.getOutputStream()));
wm.put(s, pw);
}
content = Systemcrypt.HloveyRC4(content, "CJCO");
pw.println(content);
pw.flush();
}
public void getMyResourceBack() {
if (pw != null) {
pw.close();
}
if (br != null) {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
// TODO Auto-generated catch block
}
}
if (rm != null) {
rm.clear();
}
if (wm != null) {
wm.clear();[code=vb]
}
if (ss != null) {
try {
ss.close();
} catch (IOException e) {
e.printStackTrace();
// TODO Auto-generated catch block
}
}
}
}package s_port_package_BeiJing;
import java.net.Socket;
public class Test01 {
public static void main(String[] args){
SocketServer v = new SocketServer(1999);
Socket s = v.nextSocket();
SocketClient v9 = new SocketClient("127.0.0.1",1999);
v9.writeStr("成功!!", "myThreadname", s);
try {
Thread.sleep(100000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package s_port_package_BeiJing;
import java.io.IOException;
public class Test04 {
public static void main(String[] args){
SocketClient so = new SocketClient("127.0.0.1",1999);
so.writeLoginStr("String","name");
try {