黑马程序员技术交流社区
标题:
myeclipse 如何开多个console(控制台)窗口??
[打印本页]
作者:
布鲁Go
时间:
2013-12-22 21:45
标题:
myeclipse 如何开多个console(控制台)窗口??
本帖最后由 布鲁Go 于 2013-12-23 15:14 编辑
编写一个客户端和一个服务器端,分别运行时只能运行在同一个console窗口,能同时运行两个并显示吗?譬如下面这个把客户端发来的字符串反转的程序:在windows里可以演示成功,但myeclipse弄半天不知道怎么弄。。
import java.net.*;
import java.io.*;
class Client
{
public static void main(String[] args)
{
InetAddress ia = null;
try {
ia = InetAddress.getLocalHost();//获取本地主机地址
} catch (UnknownHostException e) {
e.printStackTrace();
}
Socket s;
try {
//新建一个客户端Socket,端口为10007
s = new Socket(ia,10007);
//定义字符流缓冲区,接收键盘输入后的数据。
BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in));
//定义字符流缓冲区,接收Socket流中的InputStream。
BufferedReader bufin=new BufferedReader(new InputStreamReader(s.getInputStream()));
//定义打印流,接收Socket流中的OutputStream
PrintWriter pw=new PrintWriter(s.getOutputStream(),true);
String line=null;
while ((line=bufr.readLine())!=null)
{
if ("over".equals(line))
break;
pw.println(line);
System.out.println(bufin.readLine());
}
s.shutdownOutput();//关闭客户端Socket中的output流。
pw.close();
bufr.close();
bufin.close();
s.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
class Server
{
public static void main(String[] args)
{
ServerSocket ss;
try
{
//新建一个客户端服务器Socket,绑定10007端口。
ss = new ServerSocket(10007);
// 侦听并接受到Socket s的连接
Socket s=ss.accept();
String ip=s.getInetAddress().getHostAddress();
//提示客户端连接上了
System.out.print(ip+"......connected");
//定义字符流缓冲区,接收Socket流中的InputStream。
BufferedReader bufin=new BufferedReader(new InputStreamReader(s.getInputStream()));
//定义打印流,接收Socket流中的OutputStream
PrintWriter pw=new PrintWriter(s.getOutputStream(),true);
String line=null;
StringBuilder sb=new StringBuilder();
while ((line=bufin.readLine())!=null)
{
sb.append(line);
line=(sb.reverse()).toString();//将接收到的字符串通过StringBuilder的方法反转。
pw.println("您输入的字符串反转后为:"+line);
sb.delete(0, sb.length());//清空sb中的数据,方便下一次接收。
}
pw.close();
s.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
复制代码
作者:
恩恩
时间:
2013-12-22 23:51
可以,你在你的console那个窗口的右边,有一个右上角带黄色加号的按钮,点击一下小三角,然后会有new console view,然后你点击一下就可以了,你在执行程序的时候可以使用display selected console按钮那里可以切换不同程序的运行console。这样就不影响了。
作者:
卖火柴
时间:
2013-12-23 01:08
在eclipse打开多个console窗口
以Socket为例:
TestServer.java和TestClient.java分别表示服务器端和客户端。
如果你想要2个窗口,解决步骤:
1.运行上述2个程序(它们需要不同的控制台)
2.右击已经打开的Console窗口,选择Detached(控制台脱离eclipse,可以调整位置和大小)
3.在Console的最右边有个Open Console下拉按钮,选中new console view。此时,又新建了一个Console,这个Console位置可能不在原来的地方,找到它,然后继续右击Detached,让它脱离
4.在一个console上,点击Display Selected Console下拉按钮,选择TestServer;而在另一个console上,点击Display Selected Console下拉按钮,选择TestClient。
5.在2个console上都点击Pin Console按钮
这样,就可以达到2个控制台的目的了,同样的方法还可以开多个
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2