Text-to-Binary Encoder


/ Published in: Java
Save to your folder(s)

A simple Text Encoder.


Copy this code and paste it in your HTML
  1. package com.santi.encodingtoascii;
  2.  
  3. import java.io.*;
  4.  
  5. public class Main {
  6.  
  7. public static void main(String[] args) {
  8.  
  9. String text = getInput("Enter the text to convert to binary code: ");
  10. System.out.println(text);
  11. String finalArray="";
  12. StringBuilder sb = new StringBuilder(finalArray);
  13. // voy a hacer un bucle que vaya elemento a elemento del array de caracteres
  14. // y que me lo codifique mediante ascii a binario,
  15. // luego cada carácter codificado lo meto en un array de números binarios
  16. // y lo saco por pantalla.
  17. int len = text.length();
  18. System.out.println("Length of the text (characters): " +len);
  19. char [] char_text = text.toCharArray();
  20. for (int i=0; i<len; i++) {
  21. char c = char_text[i];
  22. switch (c) {
  23. case '0':
  24. sb.append("00110000");
  25. break;
  26. case '1':
  27. sb.append("00110001");
  28. break;
  29. case '2':
  30. sb.append("00110010");
  31. break;
  32. case '3':
  33. sb.append("00110011");
  34. break;
  35. case '4':
  36. sb.append("00110100");
  37. break;
  38. case '5':
  39. sb.append("00110101");
  40. break;
  41. case '6':
  42. sb.append("00110110");
  43. break;
  44. case '7':
  45. sb.append("00110111");
  46. break;
  47. case '8':
  48. sb.append("00111000");
  49. break;
  50. case '9':
  51. sb.append("00111001");
  52. break;
  53. case 'a':
  54. sb.append("01100001");
  55. break;
  56. case 'b':
  57. sb.append("01100010");
  58. break;
  59. case 'c':
  60. sb.append("01100011");
  61. break;
  62. case 'd':
  63. sb.append("01100100");
  64. break;
  65. case 'e':
  66. sb.append("01100101");
  67. break;
  68. case 'f':
  69. sb.append("01100110");
  70. break;
  71. case 'g':
  72. sb.append("01100111");
  73. break;
  74. case 'h':
  75. sb.append("01101000");
  76. break;
  77. case 'i':
  78. sb.append("01101001");
  79. break;
  80. case 'j':
  81. sb.append("01001010");
  82. break;
  83. case 'k':
  84. sb.append("01101011");
  85. break;
  86. case 'l':
  87. sb.append("01101100");
  88. break;
  89. case 'm':
  90. sb.append("01101101");
  91. break;
  92. case 'n':
  93. sb.append("01101110");
  94. break;
  95. case 'o':
  96. sb.append("01101111");
  97. break;
  98. case 'p':
  99. sb.append("01110000");
  100. break;
  101. case 'q':
  102. sb.append("01110001");
  103. break;
  104. case 'r':
  105. sb.append("01110010");
  106. break;
  107. case 's':
  108. sb.append("01110011");
  109. break;
  110. case 't':
  111. sb.append("01110100");
  112. break;
  113. case 'u':
  114. sb.append("01110101");
  115. break;
  116. case 'v':
  117. sb.append("01110110");
  118. break;
  119. case 'w':
  120. sb.append("01110111");
  121. break;
  122. case 'x':
  123. sb.append("01111000");
  124. break;
  125. case 'y':
  126. sb.append("01111001");
  127. break;
  128. case 'z':
  129. sb.append("01111010");
  130. break;
  131. case 'A':
  132. sb.append("01000001");
  133. break;
  134. case 'B':
  135. sb.append("01000010");
  136. break;
  137. case 'C':
  138. sb.append("01000011");
  139. break;
  140. case 'D':
  141. sb.append("01000100");
  142. break;
  143. case 'E':
  144. sb.append("01000101");
  145. break;
  146. case 'F':
  147. sb.append("01000110");
  148. break;
  149. case 'G':
  150. sb.append("01000111");
  151. break;
  152. case 'H':
  153. sb.append("01001000");
  154. break;
  155. case 'I':
  156. sb.append("01001001");
  157. break;
  158. case 'J':
  159. sb.append("01001010");
  160. break;
  161. case 'K':
  162. sb.append("01001011");
  163. break;
  164. case 'L':
  165. sb.append("01001100");
  166. break;
  167. case 'M':
  168. sb.append("01001101");
  169. break;
  170. case 'N':
  171. sb.append("01001110");
  172. break;
  173. case 'O':
  174. sb.append("01001111");
  175. break;
  176. case 'P':
  177. sb.append("10100000");
  178. break;
  179. case 'Q':
  180. sb.append("01010001");
  181. break;
  182. case 'R':
  183. sb.append("01010010");
  184. break;
  185. case 'S':
  186. sb.append("01010011");
  187. break;
  188. case 'T':
  189. sb.append("01010100");
  190. break;
  191. case 'U':
  192. sb.append("01010101");
  193. break;
  194. case 'V':
  195. sb.append("01010110");
  196. break;
  197. case 'W':
  198. sb.append("01010111");
  199. break;
  200. case 'X':
  201. sb.append("01011000");
  202. break;
  203. case 'Y':
  204. sb.append("01011001");
  205. break;
  206. case 'Z':
  207. sb.append("01011010");
  208. break;
  209. case '.':
  210. sb.append("00101110");
  211. break;
  212. case ',':
  213. sb.append("00100111");
  214. break;
  215. case ':':
  216. sb.append("00111010");
  217. break;
  218. case ';':
  219. sb.append("00111011");
  220. break;
  221. case '?':
  222. sb.append("00111111");
  223. break;
  224. case '!':
  225. sb.append("00100001");
  226. break;
  227. // case ''':
  228. // sb.append("00101100");
  229. // break;
  230. case '"':
  231. sb.append("00100010");
  232. break;
  233. case '(':
  234. sb.append("00101000");
  235. break;
  236. case ')':
  237. sb.append("00101001");
  238. break;
  239. case ' ':
  240. sb.append("00100000");
  241. break;
  242. case '@':
  243. sb.append("01000000");
  244. break;
  245. case '_':
  246. sb.append("01011111");
  247. break;
  248. case '<':
  249. sb.append("00111100");
  250. break;
  251. case '>':
  252. sb.append("00111110");
  253. break;
  254. case '[':
  255. sb.append("01011011");
  256. break;
  257. case ']':
  258. sb.append("01011101");
  259. break;
  260. }
  261. }
  262. System.out.println(sb);
  263.  
  264. }
  265.  
  266. private static String getInput(String prompt) {
  267.  
  268. System.out.print(prompt);
  269. System.out.flush();
  270.  
  271. try {
  272. return stdin.readLine();
  273. } catch (Exception e) {
  274. return "Error: " + e.getMessage();
  275. }
  276. }
  277. }

URL: http://programmingeiger824.blogspot.com

Report this snippet


Comments

RSS Icon Subscribe to comments

You need to login to post a comment.