※ 引述《angelina877 (牛牛)》之铭言:
: server端
: https://gist.github.com/javaangelina/ff67d4116cc2b0950eff8d12e202d705
: client端
: https://gist.github.com/javaangelina/1ceef4924846aa5172a61c12fe175a4e
: 我想做出来的效果是client在console端,
: system.in一些数字,
: 丢回给server进行一些逻辑判断.
: server接收完client的资料后,
: 进行逻辑判断从server丢回client,
: 但是很奇怪的是我已经建立连线了
: 在client的console输入资讯后,
: 就没有其他显示结果了
: 检查了之后也觉得逻辑上没有错
: 请高手指点囉,先感谢大家:)
======================================================================
Server 的实作是
======================================================================
try {
System.out.println("get port 3521");
serverSocket = new ServerSocket(3521);
System.out.println("waiting client....");
// 要接受他告白吗!?
clientSocket = serverSocket.accept();
writerToclient = new BufferedWriter(new OutputStreamWriter(clientSocket.getOutputStream()));
readerFormclient = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String output = null;
// 好呗,先聊聊天看看!?。但要看到 \n 才理他
while ((output = readerFormclient.readLine()) != null) {
int i = 7;
int y = Integer.parseInt(output);
// 终于说上话了,他也喜欢比 7 大的数字吗?
if (y > i) {
System.out.println(output + ">" + 7);
// 太棒惹,有想跟他说话的念头了
writerToclient.write("Hello Client.");
(谜:可是对方在等有 \n 的回音耶)
(谜:可是对方在等有 \n 的回音耶)
(谜:可是对方在等有 \n 的回音耶)
writerToclient.flush();
}
}
} catch (IOException e) {
e.printStackTrace();
}
======================================================================
Client 的实作是
======================================================================
try {
// 终于要到 line id 能送讯息惹
socket = new Socket("localhost", 3521);
System.out.println("取得输入管道");
// 死盯着 line,等你的回音
BufferedReader readerFormserver = null;
readerFormserver = new BufferedReader(
new InputStreamReader(socket.getInputStream()));
String outputformServer = null;
// 已经准备好随时可以回讯息了!
out = new PrintWriter(socket.getOutputStream(), true);
Scanner scanner = new Scanner(System.in);
// 为了高傲的自尊,我才不要先发第 1 个讯息捏
// 等你回我有一个 \n 的讯息才回你。
while ((outputformServer = readerFormserver.readLine()) != null) {
System.out.println(outputformServer);
// 收到讯息了,继续等等 \n 的讯息
}
// 是时候回你话了(谜之音:有这一天吗!?)
out.println(scanner.nextLine());
System.out.println("Client传送了");
out.close();
socket.close();
} catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
}
======================================================================
宅宅无法恋爱,因为都在等待,没人踏出第一步啊。
没有人送第 1 个讯息,双方都在等第 1 个含 \n 的讯息
另外 Client 的思维不是凡人可想像,只顾著等,不出手的。
(块逃啊~~~)
=============================================================
盛竹如:究竟是命运的安排还是情感的纠葛
剧情背后似乎隐藏着不为人知的秘密这又是怎么一回儿事呢?
整个事件已经进入扑朔离迷的罗生门就让我们继续看下去.
=============================================================
忘了再讲个小秘诀,
gist 上的档案会依附档名做 syntax highlight
你可以把档案改成 .java 结尾,比较好阅读