发表于: 2017-09-13 23:56:58
1 715
今天完成的任务
学习了如何调用一个地址的某一端口
Process p = Runtime.getRuntime().exec("ping " + "47.94.245.252");//输入要查询的ip地址
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream(),"gbk"));//这个地方不加gbk的话会发生乱码
String line = null;
StringBuilder sb = new StringBuilder();//相当于会自动扩充的string
while ((line = br.readLine()) != null) {//如果br.readLine不为空的话
if (line.length() != 0)//我觉得遍历应该也能做到吧
sb.append(line + "\r\n");//并且把line的值输入到sb中并换行
}
System.out.println("本次指令返回的消息是:");
System.out.println(sb.toString());
其中Runtime.getRuntime().exec()可以调用某一个外部程序
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream(),"gbk"));
以bgk编码的形式读取p.getInputStream()
getInputStream()用于返回输入流
StringBuilder sb = new StringBuilder();//相当于会自动扩充的string
声明一个StringBuilder对象
后面是根据br返回的值,把数据赋值给sb,并打印
返回的结果
今天本来是打算完成从本地连接服务器的端口,但是在网络上查了半天资料没有什么收获,就不在此记录了
再说一个关于Runtime.getRuntime().exec的用法,
Runtime.getRuntime().exec
可以通过路径调用本身的程序
写法就是本身路径加程序名,不过目前只对exe格式有效,txt等格式并不起作用
明天要做的事
接着连接服务器的端口
遇到的问题
不少网络教程上调用的语句,在我自己的服务器上并不奏效
收获
评论