我的需求是这样的,就是我先从一个服务器(阅读器)上读取数据,然后把这个数据发送到我自己写服务器端上,然后客户端连接我自己服务器把数据去出来?这个,我已经把数据读取出来了,不知道怎样把数据发送到我自己写的服务器端 public String getData() throws IOException{
String str = null;
System.out.println("socket1:"+socket1);
if(socket1.getOutputStream().toString().length()>0){
BufferedReader bReader = new BufferedReader(new InputStreamReader(socket1.getInputStream()));
while(!(str = bReader.readLine()).equals(null)){
sBuffer.append(str);
}
}
return sBuffer.toString();
}
这是我写的一个把数据读到自己写的服务器端的一段代码,但是那个socket为空?我有给socket传值,希望会这个的帮帮忙?谢谢!!!!!!!!!!!!!
String str = null;
System.out.println("socket1:"+socket1);
if(socket1.getOutputStream().toString().length()>0){
BufferedReader bReader = new BufferedReader(new InputStreamReader(socket1.getInputStream()));
while(!(str = bReader.readLine()).equals(null)){
sBuffer.append(str);
}
}
return sBuffer.toString();
}
这是我写的一个把数据读到自己写的服务器端的一段代码,但是那个socket为空?我有给socket传值,希望会这个的帮帮忙?谢谢!!!!!!!!!!!!!
服务---服务(阅读)---客户???
你插根管道不就和了吗?
在服务端搞个
ServerSocket ss = new ServerSocket(7777);//port号InputStream is = null;
OutputStream os = null;
is = ss.getInputStream();
os = ss.getOutputStream();在客户端直接一连
Socket s = new Socket("127.0.0.1",7777);//port号InputStream is = null;
OutputStream os = null;
is = ss.getInputStream();
os = ss.getOutputStream();
通过管道就OK了
服务---服务(阅读)---客户???
你插根管道不就和了吗?
在服务端搞个
ServerSocket ss = new ServerSocket(7777);//port号
Socket s = null;
InputStream is = null;
OutputStream os = null;
is = s.getInputStream();
os = s.getOutputStream();在客户端直接一连
Socket s = new Socket("127.0.0.1",7777);//port号InputStream is = null;
OutputStream os = null;
is = s.getInputStream();
os = s.getOutputStream();
通过管道就OK
ServerSocket ss = new ServerSocket(7777);//port号
Socket s = ss.accept();
Socket socket1;
InputStream is;
OutputStream os;
String readerString;
int rssirecord;
int tagNo;
int j;
boolean dirYes;
StringBuffer sBuffer; public DataManager() {
super();
try {
socket1 = new Socket("192.168.1.127",4000);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} /*public DataManager(Socket socket) {
super();
this.socket1 = socket;
}*/ /**
*
* @param writer
*/ public void writerData(String writer) {
writer = (char) 58 + writer + (char) 13 + (char) 10;
try {
byte[] mybytes = writer.getBytes("ASCII");
os = socket1.getOutputStream();
os.write(mybytes, 0, mybytes.length);
os.flush(); } catch (Exception e) {
System.out.println("编码转化异常");
System.out.println("流读取出错");
e.printStackTrace();
}
} /*
*
* 读取标签中的信息
*/
public void ReaderData() { int rssivalue;
if (readerString.contains("$")) {
String tagNo = readerString.substring(0, 18);
byte[] bs=SymmetricCipherWithPassword.enCipherContent(tagNo, SymmetricCipherWithPassword.createPassword("11"));
System.out.println(bs);
rssivalue = Integer.parseInt(readerString.substring(16, 18));
if ((100 - rssivalue) > rssirecord) {
rssirecord = 100 - rssivalue;
}
} else {
if (readerString.contains("STAT")) {
rssivalue = Integer.parseInt(readerString.substring(7, 9)); if (((100 - rssivalue) > rssirecord)) {
rssirecord = 100 - rssivalue; }
}
} } public void run() {
//InputStream is;
System.out.println("进入run");
byte data;
System.out.println(readerString);
while (true) {
try {
//System.out.println("run socket1"+socket1);
if(socket1.getOutputStream().toString().length()>0){
System.out.println(socket1);
is = socket1.getInputStream();
data = (byte) is.read();
readerString += (char)data;
//
if (data == 10) {
ReaderData();
if (dirYes == true) {// 显示方式
if (readerString.length() > 10) {
if (readerString.substring(0, 6) != ":OK\r\n$") {
System.out.println(readerString);
/*if (readerString.substring(0, 1) == "$") {
if (readerString.substring(16, 17) == "1"
|| readerString.substring(16, 17) == "2"
|| readerString.substring(16, 17) == "4") {
}
System.out.println(readerString);
}*/ }
} else {
System.out.println(readerString);
}
}
readerString = "";
}
}
} catch (IOException e) {
System.out.println("数据读取出问题");
e.printStackTrace();
} }
}
public void Connect()
{
try {
socket1 = new Socket("192.168.1.127", 4000);
DataManager data = new DataManager();
System.out.println("连接上");
data.setDaemon(true);
Thread thread = new Thread(data);
thread.start();
RFIDServert servert = new RFIDServert();
Thread thread1 = new Thread(servert);
thread1.start();
data.writerData("START");
} catch (Exception e) {
System.out.println("连接异常,连接出错");
e.printStackTrace();
}
}
public String getData() throws IOException{
String str = null;
System.out.println("socket1:"+socket1);
if(socket1.getOutputStream().toString().length()>0){
BufferedReader bReader = new BufferedReader(new InputStreamReader(socket1.getInputStream()));
while(!(str = bReader.readLine()).equals(null)){
sBuffer.append(str);
}
}
return sBuffer.toString();
}