2012-02-18 23 views
9

Tôi đã tìm kiếm rất nhiều nhưng tôi không thể tìm thấy bất kỳ cách nào để chuyển đổi loại inetaddress thành chuỗi (có thể tìm kiếm của tôi không phải là tốt: S) .Tôi phải chuyển đổi nó thành loại chuỗi vì tôi có để hiển thị kết quả trong textarea (gui thành phần) mà đòi hỏi phải loại string.So ai có thể làm thế nào là điều này có thể ??Java: inetaddress để chuyển đổi chuỗi

Trả lời

19

Java API cho lớp InetAddress có các phương pháp tốt cho nhu cầu của bạn, tôi hiểu. Hãy thử các phương pháp này. Bạn có thể kiểm tra getters tài sản khác của InetAddress cho các yêu cầu của bạn.

public static void main (String [] args) throws UnknownHostException 
{ 
    // Instantiate your own InetAddress object. 
    InetAddress address = InetAddress.getLocalHost(); 
    String hostIP = address.getHostAddress() ; 
    String hostName = address.getHostName(); 
    System.out.println("IP: " + hostIP + "\n" + "Name: " + hostName); 
} 
5

Bạn đã thử phương pháp InetAddress.toString() chưa?

+0

này trả về một dấu gạch chéo. Sử dụng getHostAddress() để thay thế. Xem http://stackoverflow.com/questions/12947435/inetaddress-tostring-returns-a-forward-slash – LeslieM

1

gì về

System.out.println(Inet4Address.getLocalHost().getHostAddress()); 

?

3

Chỉ cần gọi phương thức InetAddress toString(). Ngoài ra, nếu bạn đặc biệt muốn tên máy chủ lưu trữ, hãy sử dụng getHostName. Nếu bạn muốn biểu thị chuỗi địa chỉ IP, hãy sử dụng getHostAddress().

mẫu:

InetAddress inet = InetAddress.getByName("193.125.22.1"); 
System.out.println(inet.toString()); 

để biết thêm thông tin xem: http://www.java2s.com/Code/JavaAPI/javax.net/InetAddressgetByNameStringname.htm

+0

upvoted cho bit quan trọng: getHostAddress nếu bạn chỉ muốn chuỗi địa chỉ –

Các vấn đề liên quan