Я изо всех сил пытался найти« описание »компьютера, на котором запущено мое приложение Java.
] То, что мне нужно, это имя, используемое для DNS при рекламе моего компьютера в локальной сети («iMac Mattijs» на снимках экрана ниже).
В Windows XP это имя можно найти здесь: Панель управления -> Система -> Имя компьютера -> Описание компьютера.
В Mac OS 10.6 это имя можно найти здесь: Системные настройки -> Общий доступ -> Имя компьютера
Приведенные ниже методы не доставляют имя, которое я ищу. Взгляните на этот код:
System.out.println("COMPUTERNAME environment variable: " + System.getenv("COMPUTERNAME"));
try { System.out.println("localhost name: " + InetAddress.getLocalHost().getHostName()); }
catch (UnknownHostException e1) {}
try {
Enumeration<NetworkInterface> interfaces = NetworkInterface.getNetworkInterfaces();
while (interfaces.hasMoreElements()) {
NetworkInterface thisInterface = interfaces.nextElement();
Enumeration<InetAddress> addresses = thisInterface.getInetAddresses();
System.out.println("* network interface: " + thisInterface.getDisplayName());
while (addresses.hasMoreElements()) {
InetAddress address = addresses.nextElement();
System.out.println(" - address: " + address.getCanonicalHostName());
}
}
} catch (SocketException e) {}
В Windows это печатает:
COMPUTERNAME environment variable: ARTTECH-51CA5F5
localhost name: arttech-51ca5f5
* network interface: MS TCP Loopback interface
- address: localhost
* network interface: NVIDIA nForce Networking Controller - Packet Scheduler Miniport
* network interface: Broadcom 802.11n Network Adapter - Packet Scheduler Miniport
- address: arttech-51ca5f5.lan
* network interface: Bluetooth Device (Personal Area Network)
На Mac я получаю:
COMPUTERNAME environment variable: null
localhost name: imac-mattijs.lan
* network interface: en1
- address: imac-mattijs.lan
- address: imac-mattijs.local
* network interface: lo0
- address: localhost
- address: fe80:0:0:0:0:0:0:1%1
- address: localhost
Но я ищу полную строку «iMac Mattijs».
Любые подсказки будут очень приветствоваться !
Спасибо, Маттийс