내가 뭘 하려는지 소켓 연결에서 데이터를 읽은 다음 모든 것을 파일에 쓰는 것입니다. 내 독자와 모든 관련 진술은 아래와 같습니다. 왜 그것이 작동하지 않는 아이디어? 이 작업을보다 효율적으로 수행 할 수 있다면 유용 할 것입니다.소켓에서 데이터를 읽고 파일에 쓸 수있는 방법은 무엇입니까?
(내 전체 코드가 성공적으로 소켓에 연결 않음)
편집 : 내 코드를 더 추가되었습니다.
public static void main(String args[]) throws IOException
{
Date d = new Date();
int port = 5195;
String filename = "";
//set up the port the server will listen on
ServerSocketChannel ssc = ServerSocketChannel.open();
ssc.socket().bind(new InetSocketAddress(port));
while(true)
{
System.out.println("Waiting for connection");
SocketChannel sc = ssc.accept();
try
{
Socket skt = new Socket("localhost", port);
BufferedReader in = new BufferedReader(new InputStreamReader(skt.getInputStream()));
FileWriter logfile = new FileWriter(filename);
BufferedWriter out = new BufferedWriter(logfile);
BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
while ((inputLine = stdIn.readLine()) != null)
{
System.out.println("reading in data");
System.out.println(inputLine);
out.write(inputLine);
System.out.println("echo: " + in.readLine());
}
sc.close();
System.out.println("Connection closed");
}
무엇이''skt'입니까? 너 자신과 연결되어 있니? 왜? 그리고 왜 당신은'sc'에 입출력을하고 있지 않습니까, 받아 들여진 SocketChannel입니까? – EJP