-1

Javaで文字列「00155D038D01」をmacAdress形式に変換する最も簡単な方法を知りたいです。

4

5 に答える 5

12

正規表現で試してください

char divisionChar = ':';//change to '-' if you want your mac to be like 00-15-5D-03-8D-01
String unformattedMAC = "00155D038D01";
String formattedMAC = unformattedMAC.replaceAll("(.{2})", "$1"+divisionChar).substring(0,17);

あなたが持っているすべてのMACアドレスで動作します

于 2013-01-28T10:32:43.223 に答える
8

私はそれ"00155D038D01".replaceAll("(..)(?!$)", "$1-")が最も簡単だと思います:)

于 2013-01-28T10:34:31.307 に答える
7

明らかに、

public String convertToMacAddress(String input) {
   if (input.equals("00155D038D01") {
       return "00-15-5D-03-8D-01";
   } 

   return null; 
}
于 2013-01-28T10:26:44.847 に答える
1

簡単な方法:

String s = "00155D038D01";
StringBuilder sb = new StringBuilder();
for(int i = 0; i < s.length();)
{
    sb.append(s.substring(i++, ++i));
    if(i < s.length()) sb.append("-");
}
String mac = sb.toString();
于 2013-01-28T10:32:45.603 に答える
1
String address = "00155D038D01";
StringBuilder sb = new StringBuilder(address);

for(int i = 2; i < address.length()+(i/3); i+=3){
   sb.insert(i, ':');
}

System.out.println(sb.toString());
于 2013-01-28T10:36:54.920 に答える