override protected int encodeChar(char c, StringBuilder sb) { if (c == '\r') { sb.Append('\u0000'); } else if (c == '*') { sb.Append('\u0001'); } else if (c == '>') { sb.Append('\u0002'); } else if (c == ' ') { sb.Append('\u0003'); } else if (c >= '0' && c <= '9') { sb.Append((char)(c - 48 + 4)); } else if (c >= 'A' && c <= 'Z') { sb.Append((char)(c - 65 + 14)); } else { HighLevelEncoder.illegalCharacter(c); } return(1); }
private static void encodeChar(char c, StringBuilder sb) { if (c >= ' ' && c <= '?') { sb.Append(c); } else if (c >= '@' && c <= '^') { sb.Append((char)(c - 64)); } else { HighLevelEncoder.illegalCharacter(c); } }
override protected int encodeChar(char c, StringBuilder sb) { if (c == ' ') { sb.Append('\u0003'); return(1); } if (c >= '0' && c <= '9') { sb.Append((char)(c - 48 + 4)); return(1); } if (c >= 'a' && c <= 'z') { sb.Append((char)(c - 97 + 14)); return(1); } if (c >= '\u0000' && c <= '\u001f') { sb.Append('\u0000'); //Shift 1 Set sb.Append(c); return(2); } if (c >= '!' && c <= '/') { sb.Append('\u0001'); //Shift 2 Set sb.Append((char)(c - 33)); return(2); } if (c >= ':' && c <= '@') { sb.Append('\u0001'); //Shift 2 Set sb.Append((char)(c - 58 + 15)); return(2); } if (c >= '[' && c <= '_') { sb.Append('\u0001'); //Shift 2 Set sb.Append((char)(c - 91 + 22)); return(2); } if (c == '\u0060') { sb.Append('\u0002'); //Shift 3 Set sb.Append((char)(c - 96)); return(2); } if (c >= 'A' && c <= 'Z') { sb.Append('\u0002'); //Shift 3 Set sb.Append((char)(c - 65 + 1)); return(2); } if (c >= '{' && c <= '\u007f') { sb.Append('\u0002'); //Shift 3 Set sb.Append((char)(c - 123 + 27)); return(2); } if (c >= '\u0080') { sb.Append("\u0001\u001e"); //Shift 2, Upper Shift int len = 2; len += encodeChar((char)(c - 128), sb); return(len); } HighLevelEncoder.illegalCharacter(c); return(-1); }