所以 new一个String 把拿到的对象放进去。即首先使用byte[]进行接收,接收完成以后使用
new String((byte[]) xxx )获取为String
分类: 电脑/网络 >>程序设计 >>其他编程语言问题描述:
我下载了一个IP数据库,但是发现格式如下:
id ip1 ip2 addr
7559 *********** *********** 浙江省嘉兴市 桐乡
请问ip1和ip2分别怎么换算成xxx.xxx.xxx.xxx这样的格式?
解析:
关于IP到Dword的转换:
在这里,我们运用WINDOWS自带的计数器,并开启它的科学计算功能,以211,91,216,106到***********为例,先分别将十进制的206,169,40,2转换成十六进制的d3,5b,d8,6a,再将d3,5b,d8,6a以十六进制的双字节的形式写如计数器,再转换成十进制,就可以得到***********.事实上,在平常运用中,我们常用的方法是这样的:
211 x *********** = ***********
91 x 65536 = 5963776
216 x 256 = 55296
+ 106 x 1 = 106
--------------------------------
***********
与IP的256倍数叠加一致,***********也可以以***********的倍数叠加!
关于IP与八进制及十六进制的转换:
虽然已经知道了Dword的转换,但是还远远不够,因为IP同样可以被转换成八进制和十六进制!对于八进制,我们仅仅只要将各段IP分别转换成八进制,然后再在各段IP前加上一个"0(零)"即可,如211,91,216,106被转换成0323,0133,0330.0152.对于十六进制,如八进制的转换,在这里,不同的仅仅是在开头处加上"0(零)x",成为0xd3.0x5b.0xd8.0x6a,而且此处小数点是可以省略的而成为0xd35bd86a,而且与上述的倍数叠加原理相同.
讲了这么多,归纳起来,有以下几种方式访问ttian/index
user:pwd@***********/index --可加上***********的整数倍
user:pwd@0323.0133.0330.0152/index --各字段前可加数个"0"
user:pwd@0xd3.0x5b.0xd8.0x6a/index
user:pwd@0xd35bd86a/index --可在"0x"后加上任意字符
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)