在Java命令行中进行网络操作,你可以使用Java标准库中的java.net包。这个包提供了一系列类和接口,用于实现网络应用程序。以下是一些基本的网络操作示例:
InetAddress类获取IP地址和主机名:import java.net.InetAddress;
import java.net.UnknownHostException;
public class NetworkOperations {
public static void main(String[] args) {
try {
InetAddress ipAddress = InetAddress.getByName("www.example.com");
System.out.println("IP Address: " + ipAddress.getHostAddress());
System.out.println("Hostname: " + ipAddress.getHostName());
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
URL和URLConnection类读取网页内容:import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class NetworkOperations {
public static void main(String[] args) {
try {
URL url = new URL("https://www.example.com");
URLConnection connection = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Socket类实现客户端与服务器的通信:客户端:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client {
public static void main(String[] args) {
try {
Socket socket = new Socket("localhost", 8080);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.println("Hello, Server!");
System.out.println("Server response: " + in.readLine());
in.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
服务器:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(8080);
System.out.println("Server is listening on port 8080...");
Socket socket = serverSocket.accept();
System.out.println("New client connected.");
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
String message = in.readLine();
System.out.println("Client message: " + message);
out.println("Hello, Client!");
in.close();
out.close();
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
这些示例展示了如何在Java命令行中进行基本的网络操作。你可以根据自己的需求修改这些示例,实现更复杂的网络功能。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。