Java常用工具类是在Java编程中经常用到的类库,这些类库已经被Java官方开发团队封装好,我们可以直接调用这些工具类的方法来实现一些常见的操作。其中,IP和File工具类是Java编程领域中比较常用的工具类。
IP 工具类
1. 获取本机IP
我们可以使用Java中的InetAddress类来获取本机的IP地址。
import java.net.InetAddress;
public class IPUtil {
public static String getLocalIp() {
String ip = "";
try {
// 获取本机IP
InetAddress addr = InetAddress.getLocalHost();
ip = addr.getHostAddress().toString();
} catch (Exception e) {
ip = "获取本机IP失败";
}
return ip;
}
}
2. 获取远程IP
我们可以通过HttpServletRequest对象来获取客户端的IP地址:
import javax.servlet.http.HttpServletRequest;
public class IPUtil {
public static String getRemoteIp(HttpServletRequest request) {
String ip = "";
if (request != null) {
// 获取客户端IP
ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
}
return ip;
}
}
File 文件工具类
File工具类是Java中最基本的文件操作类,它提供了一些常见的文件操作方法,如文件的读、写、复制、删除等。
1. 创建文件
可以使用File的构造函数或者createNewFile()方法来创建一个文件。
import java.io.File;
public class FileUtil {
public static void createFile(String filePath) {
File file = new File(filePath);
try {
if (file.exists()) {
System.out.println("文件" + filePath + "已经存在");
} else {
file.createNewFile();
System.out.println("文件" + filePath + "创建成功");
}
} catch (Exception e) {
System.out.println("创建文件" + filePath + "失败");
e.printStackTrace();
}
}
}
2. 写入文件
可以使用FileWriter或BufferedWriter类来实现向文件中写入数据。
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
public class FileUtil {
public static void writeToFile(String filePath, String content) {
File file = new File(filePath);
try {
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(content);
writer.close();
} catch (Exception e) {
System.out.println("写入文件" + filePath + "失败");
e.printStackTrace();
}
}
}
以上就是IP和File工具类的常见用法,当我们编写Java程序时,需要进行常见的文件操作和IP处理时,可以通过引入这两个工具类来简化我们的编程工作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java常用工具类 IP、File文件工具类 - Python技术站