本文为原创,如需转载,请注明作者和出处,谢谢!
上一篇:Java网络编程从入门到精通(7):用getHostAddress方法获得IP地址
getAddress方法和getHostAddress类似,它们的唯一区别是getHostAddress方法返回的是字符串形式的IP地址,而getAddress方法返回的是byte数组形式的IP地址。getAddress方法的定义如下:
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->publicbyte[]getAddress()
这个方法返回的byte
数组是有符号的。在Java
中byte
类型的取值范围是-128
〜127
。如果返回的IP
地址的某个字节是大于127
的整数,在byte
数组中就是负数。由于Java
中没有无符号byte
类型,因此,要想显示正常的IP
地址,必须使用int
或long
类型。下面代码演示了如何利用getAddress
返回IP
地址,以及如何将IP
地址转换成正整数形式。
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->package mynet;
importjava.net.*;
publicclass MyIP
{
publicstaticvoidmain(String[]args)throwsException
{
InetAddressaddress=InetAddress.getByName("www.csdn.net");
byteip[]=address.getAddress();
for(byteipSegment:ip)
System.out.print(ipSegment+"");
System.out.println("");
for(byteipSegment:ip)
{
intnewIPSegment=(ipSegment<0)?256+ipSegment:ipSegment;
System.out.print(newIPSegment+"");
}
}
}
运行结果:
<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->-4510026122
21110026122
从上面的运行结果可以看出,第一行输出了未转换的IP地址,由于www.csdn.net的IP地址的第一个字节大于127,因此,输出了一个负数。而第二行由于将IP地址的每一个字节转换成了int类型,因此,输出了正常的IP地址。
下一篇:Java网络编程从入门到精通(9):使用isXxx方法判断地址类型
国内最棒的Google Android技术社区(eoeandroid),欢迎访问!《银河系列原创教程》发布《Java Web开发速学宝典》出版,欢迎定购
分享到:
相关推荐
### JAVA网络编程从入门到精通知识点详解 #### 一、Internet地址概述 互联网中的每一台设备都需要有一个唯一的标识符——IP地址。当前广泛使用的IPv4地址由四个字节组成,而未来的趋势是采用16个字节的IPv6地址。 ...
### Java网络编程精要 #### Internet地址概述与分类 ...以上是对Java网络编程中一些核心知识点的概括,涵盖了从IP地址管理、套接字通信到非阻塞I/O模型的各个方面,为深入理解和应用Java网络编程技术奠定了基础。
Java网络编程是开发基于Java的应用程序进行网络通信的关键技术,主要涉及TCP/IP协议栈、UDP协议以及Socket编程。本文将详细介绍这些概念,并提供一个简单的Java UDP编程实例。 首先,了解TCP/IP网络程序的基础知识...
在Java编程语言中,获取计算机名和IP地址是常见的网络编程任务。这主要涉及到Java的`java.net`包,该包提供了多种类和接口来处理网络相关的操作。下面将详细介绍如何使用Java获取计算机名和IP地址。 首先,我们来看...
在Java编程中,IP地址解析通常涉及到网络通信和地理定位技术。这个场景中,我们主要关注如何使用Java来获取一个IP地址对应的省市区以及运营商信息。以下是一些关键知识点: 1. **IP地址类型**: - IPv4:最常见的...
### Java网络编程精要 #### 一、Internet地址概述 ...综上所述,Java网络编程涵盖了从基础的IP地址处理到高级的非阻塞I/O技术,涉及的知识点丰富且复杂。掌握这些技术,可以构建高性能、高可靠性的网络应用程序。
在Java编程语言中,处理和分析IP地址是一项常见的任务,特别是在网络编程和数据分析领域。IP地址(Internet Protocol address)是互联网上设备的唯一标识符,通常以点分十进制的形式表示,例如“192.168.1.1”。在...
以上代码首先获取当前的`FacesContext`实例,然后从中得到`HttpServletRequest`对象,并调用其`getRemoteAddr()`方法获取客户端的IP地址。 需要注意的是,`getRemoteAddr()`方法返回的是客户端的IP地址,如果客户端...
### Java基础之网络编程讲解——适合初级人员入门学习 #### 一、网络编程概述 Java 网络编程是 Java 开发中一个重要的分支,它允许开发者创建可以在网络上进行通信的应用程序。对于初学者来说,理解网络编程的基本...
2. **获取数据**:通过getData()获取数据,getLength()获取数据长度,getPort()获取目标端口,getAddress()获取目标IP地址。 **四、UDP编程步骤** 1. 创建DatagramSocket实例,指定服务器端监听的端口。 2. 准备...
本示例聚焦于如何在MFC应用中使用IP地址控件来显示和设置IP地址,这对于网络编程尤其重要,因为它允许用户直观地输入和查看网络设备的IP配置。 IP地址控件(CIPAddressCtrl)是Windows API提供的一种特殊控件,用于...
Java网络编程中的UDP(User Datagram Protocol)是一种无连接的、不可靠的传输协议,它相比TCP(Transmission Control Protocol)在速度上更快,因为不需要建立和维护连接,也不保证数据包的顺序和可靠性。...
在Java编程环境中,实现IP库通常涉及到网络编程和数据处理,这主要为了处理与IP地址相关的各种任务,如IP解析、IP地理位置定位、IP到主机名的映射等。在这个场景下,`java IP库实现`可能是一个自定义的Java库,用于...
在《java基础入门》第三版的第十三章作业中,主要涉及了Java的Socket编程和相关的网络协议知识。 1. **ServerSocket类**:在Java中,`ServerSocket`类用于创建服务器端的套接字,监听客户端的连接请求。用于接收...
例如,你可以使用`getByName`解析主机名得到IP地址,或者用`getLocalHost`获取本地主机的IP地址。`getHostName`和`getHostAddress`方法分别用于获取主机名和IP地址的字符串形式。 ### 三、详细设计 UDP编程的基本...
其中,`CIPAddressCtrl`是专门用于处理IP地址输入的控件,它允许用户以标准的IPv4格式(四组0到255之间的数字,每组之间用点分隔)输入或查看IP地址。本实例将深入探讨`CIPAddressCtrl`的使用方法,以及如何在MFC...
SNMP4J 编程入门 SNMP4J 是一个 Java 库,用于实现 SNMP(Simple Network Management Protocol)协议。SNMP 是一个标准的网络管理协议,用于管理和监控网络设备。在 SNMP4J 中,有三个核心概念:Snmp、Target 和 ...
在IT行业中,网络编程是构建分布式系统和网络应用的基础,而UDP(User Datagram Protocol)作为传输层协议之一,因其无连接、不可靠但高效的特点,常用于实时数据传输,如在线游戏、视频会议等场景。本节我们将深入...