一个IP地址是用四个字节(每一个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。
输入格式:
输入在一行中给出32位二进制字符串。
输出格式:
在一行中输出十进制格式的IP地址,其由4个十进制数组成(分别相应4个8位的二进制数)。中间用“.”分隔开。
输入例子:11001100100101000001010101110010输出例子:
204.148.21.114
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
String str = cin.nextLine();
String str1 = str.substring(0, 8);
String str2 = str.substring(8, 16);
String str3 = str.substring(16, 24);
String str4 = str.substring(24, 32);
BigInteger bi1 = new BigInteger(str1, 2);
BigInteger bi2 = new BigInteger(str2, 2);
BigInteger bi3 = new BigInteger(str3, 2);
BigInteger bi4 = new BigInteger(str4, 2);
System.out.printf("%s.%s.%s.%s", bi1.toString(), bi2.toString(),
bi3.toString(), bi4.toString());
}
}