您的位置:首页 > 编程语言 > Java开发

java代码读取port.txt文件的代码

2018-01-22 21:01 288 查看
最近做了,一个java的socket服务【

一个socket服务器,能够接受发送过来的信息,然后,广播出去


需要用一个java类去读取另一个txt文件的内容,再此做个笔记,方便以后查看!

port.txt文件内容如下

port=9999

Server.java类如下,加载。。。。。。port.txt的端口号为9999

package test;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.HashSet;

import java.util.Set;

import java.util.concurrent.ExecutorService;

import java.util.concurrent.Executors;

public class Server {
public static void main(String[] args) throws Exception {
final ExecutorService threadPool = Executors.newCachedThreadPool();

// int myport = 0;
final Set<Socket> sockets = new HashSet<>();
   String bbbc = "";
   String line = "";  
try {

            /* 读入TXT文件 */  

            String pathname = ".\\src\\test\\port.txt"; // 绝对路径或相对路径都可以,这里是绝对路径,写入文件时演示相对路径  

            File filename = new File(pathname); // 要读取以上路径的input。txt文件  

            InputStreamReader reader = new InputStreamReader(  

                    new FileInputStream(filename)); // 建立一个输入流对象reader  

            BufferedReader br = new BufferedReader(reader); // 建立一个对象,它把文件内容转成计算机能读懂的语言  

            line = br.readLine();  

            bbbc = line.substring(5);
} catch (Exception e) {
e.printStackTrace();  
}
int myport=Integer.parseInt(bbbc);

ServerSocket serverSocket = new ServerSocket(myport);
while(true) {
final Socket socket = serverSocket.accept();
sockets.add(socket);
threadPool.execute(new Runnable() {
@Override
public void run() {
try {
final InputStream in = socket.getInputStream();
int b;
while((b = in.read()) != -1) {
for (Socket socket1 : sockets) {
if (socket1 != socket) {
socket1.getOutputStream().write(b);
}
}
}
} catch(IOException e) {
e.printStackTrace();
} finally {
sockets.remove(socket);
}
}
});
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: