未验证 提交 3924c524 编写于 作者: 布兰柯基 提交者: GitHub

Merge pull request #690 from BigAdam2005/addBinaryEncoding

Added binary encoding
......@@ -183,4 +183,34 @@ public final class EncodeUtils {
return Html.fromHtml(input);
}
}
/**
* Return the binary encoded string padded with one space
*
* @param input
* @return binary string
*/
public static String binEncode(final String input) {
StringBuilder stringBuilder = new StringBuilder();
for (char i : input.toCharArray()) {
stringBuilder.append(Integer.toBinaryString(i));
stringBuilder.append(' ');
}
return stringBuilder.toString();
}
/**
* Return UTF-8 String from binary
*
* @param input binary string
* @return UTF-8 String
*/
public static String binDecode(final String input){
String[] splitted = input.split(" ");
StringBuilder sb = new StringBuilder();
for(String i : splitted){
sb.append(((char) Integer.parseInt(i.replace(" ", ""), 2)));
}
return sb.toString();
}
}
......@@ -70,4 +70,10 @@ public class EncodeUtilsTest extends BaseTest {
assertEquals(html, EncodeUtils.htmlDecode(encodeHtml).toString());
}
@Test
public void binEncode_binDecode(){
String test = "test";
String binary = EncodeUtils.binEncode(test);
assertEquals("test", EncodeUtils.binDecode(binary));
}
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册