Smiller
BAN USERpackage SimpleTools;
import java.util.Arrays;
import java.util.List;
public class IPConvertToHex {
public static final String NOT_SUPPORTED = "IP format not supported.";
public static void main(String[] args) {
System.out.println("You input: " + args[0]);
System.out.println(IPConvertToHex(args[0]));
}
public static String IPConvertToHex(String s){
//VALIDATE INPUT
List<String> octets = Arrays.asList(s.split("\\."));
if (octets.size() != 4){
return NOT_SUPPORTED;
}
for (String o : octets) {
try {
if (!(0 <= Integer.parseInt(o) && 256 > Integer.parseInt(o))){
return NOT_SUPPORTED;
}
} catch (NumberFormatException | NullPointerException e){
return NOT_SUPPORTED;
}
}
//BUILD HEX STRING
StringBuilder hexIP = new StringBuilder();
hexIP.append("0x");
octets.forEach(octet -> {
hexIP.append(String.format("%x", Integer.valueOf(octet), 16));
});
//OUTPUT
return hexIP.toString();
}
}
- Smiller December 10, 2017