写一个java语言的socket连接代码
时间: 2024-05-05 12:15:40 浏览: 13
以下是一个简单的Java Socket连接代码示例:
```
import java.net.*;
import java.io.*;
public class SocketClient {
public static void main(String[] args) {
String hostname = "localhost";
int port = 8080;
try (Socket socket = new Socket(hostname, port)) {
OutputStream output = socket.getOutputStream();
OutputStreamWriter writer = new OutputStreamWriter(output);
writer.write("Hello, server!\n");
writer.flush();
InputStream input = socket.getInputStream();
InputStreamReader reader = new InputStreamReader(input);
int character;
StringBuilder data = new StringBuilder();
while ((character = reader.read()) != -1) {
data.append((char) character);
}
System.out.println("Server response: " + data);
} catch (UnknownHostException ex) {
System.out.println("Server not found: " + ex.getMessage());
} catch (IOException ex) {
System.out.println("I/O error: " + ex.getMessage());
}
}
}
```
这个代码使用了Java的Socket类来与服务器建立连接。它首先指定了要连接的服务器的主机名和端口号,然后创建了一个Socket类实例。接着通过Socket实例获取输出流,创建一个输出流写入器,并使用它向服务器发送一条消息。然后获取输入流,创建一个输入流读取器,并循环读取服务器的响应,将其存储在一个字符串构建器中。最后输出服务器的响应。在连接期间可能会抛出异常,因此代码使用了try-with-resources块来确保资源在使用后正确关闭。