如何在java中使用ENUM协议将E.164电话号码映射到DNS名称?
我目前正在开发一个java应用程序,将E.164电话号码映射到DNS名称以获得IP地址。我不知道如何实现。如果有人知道,请帮助我。应该不会太复杂。以下是从相应的 ITU枚举分配特定的 区域,即“e164.arpa”,用于 枚举的IP侧的E.164个数字 网络。RFC 3761定义了 枚举数,如+1 555 42 can 被转换为URI,由 把数字倒过来,分开 带点并添加e164.arpa 后缀:2.4.2.4.5.5.5.1.e164.arpa 编辑 仅详细说明:如何在java中使用ENUM协议将E.164电话号码映射到DNS名称?,java,Java,我目前正在开发一个java应用程序,将E.164电话号码映射到DNS名称以获得IP地址。我不知道如何实现。如果有人知道,请帮助我。应该不会太复杂。以下是从相应的 ITU枚举分配特定的 区域,即“e164.arpa”,用于 枚举的IP侧的E.164个数字 网络。RFC 3761定义了 枚举数,如+1 555 42 can 被转换为URI,由 把数字倒过来,分开 带点并添加e164.arpa 后缀:2.4.2.4.5.5.5.1.e164.arpa 编辑 仅详细说明: 把电话号码读成一个字母 字符串
仅此而已-您不需要特殊的API,它只是一种字符串转换映射部分非常简单
public String getEnum(String number) {
String data = number.replaceAll("[^0-9]","");
StringBuffer sb = new StringBuffer();
for (int i = data.length()-1; i >= 0; i--)
{
sb.append(data.charAt(i)).append('.');
}
sb.append("e164.arpa.");
return sb.toString();
}
谢谢你的回复。理论上没问题,但我想用java实现这个概念。比如我的应用程序必须得到一个电话号码作为输入,并给出相应的IP地址作为输出。这就是我想要做的。我在一些文章中读到过,比如JSR-161 api就是用来做这件事的。但是我很难得到那个api。如果有人知道链接,请告诉我。好的好的。在得到这个被称为DNS查询字符串的字符串后,使用这个字符串我必须得到对应于那个电话号码的DNS名称。我如何才能做到这一点?这是可以用来进行DNS查找的DNS名称。我想您需要获取SIPURI等的NAPTR记录。Java不支持这一点。你需要使用Java DNS包。谢谢你的回复。我有一些想法。