一、核心作用
网络编程基础类
- ipaddress:表示 ip 地址(ipv4 或 ipv6)
- ipendpoint:表示网络端点,包含 ip 地址和端口号
命名空间:system.net
二、ipaddress 类详解
三种初始化方式
1. byte 数组初始化
byte[] ipaddress = new byte[] { 192, 168, 1, 1 };
ipaddress ip1 = new ipaddress(ipaddress);
2. long 长整型初始化
ipaddress ip2 = new ipaddress(0xc0a80101); // 192.168.1.1
注意:不推荐使用,可读性差
3. 字符串解析(推荐)
ipaddress ip3 = ipaddress.parse("192.168.1.1");
特殊 ip 地址
127.0.0.1:本机环回地址ipaddress.ipv6any:ipv6 任意地址ipaddress.loopback:环回地址常量
三、ipendpoint 类详解
网络端点表示
将网络端点表示为 ip地址 + 端口号 的组合
两种初始化方式
1. long + int 初始化
ipendpoint endpoint1 = new ipendpoint(0xc0a80101, 8080);
2. ipaddress + int 初始化(推荐)
ipendpoint endpoint2 = new ipendpoint(ipaddress.parse("192.168.1.1"), 8080);
四、重要特性
ipaddress 类特性
- 支持 ipv4 和 ipv6 地址
- 提供地址解析和验证方法
- 包含常用特殊地址的静态属性
ipendpoint 类特性
- 完整的网络端点描述
- 用于 socket 编程中的连接和绑定
- 支持地址族检测
五、实际应用场景
服务器监听配置
// 创建服务器端点 ipendpoint serverendpoint = new ipendpoint(ipaddress.any, 8080);
客户端连接配置
// 创建客户端连接端点
ipendpoint clientendpoint = new ipendpoint(ipaddress.parse("192.168.1.100"), 8080);
地址验证和转换
// 验证ip地址格式
if (ipaddress.tryparse("192.168.1.1", out ipaddress validip))
{
// 使用有效ip地址
}
六、最佳实践
初始化选择
- 推荐:使用
ipaddress.parse()和ipendpoint(ipaddress, port) - 避免:使用 long 类型初始化,可读性差
错误处理
try
{
ipaddress ip = ipaddress.parse(inputstring);
}
catch (formatexception)
{
console.writeline("ip地址格式错误");
}
ipaddress 和 ipendpoint 是 c# 网络编程的基础类,掌握它们的正确使用方法对于开发网络应用程序至关重要。推荐使用字符串解析方式初始化,代码可读性更好且易于维护。
到此这篇关于c# ipaddress 和 ipendpoint 类的使用小结的文章就介绍到这了,更多相关c# ipaddress ipendpoint 内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论