Advertisement
ibragimova_mariam

1 задание защита информации

Sep 15th, 2017
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.89 KB | None | 0 0
  1. package zaschita1;
  2.  
  3. import java.io.FileWriter;
  4. import java.nio.charset.StandardCharsets;
  5. import java.nio.file.Files;
  6. import java.nio.file.Paths;
  7. import java.util.List;
  8.  
  9. public class Zaschita1 {
  10.  
  11. public static void kodirovanie() throws Exception{
  12. System.out.println("Kodirovanie: \n");
  13. List<String> lines = Files.readAllLines(Paths.get("src//zaschita1//input1.txt"), StandardCharsets.UTF_8);
  14. StringBuilder sb = new StringBuilder();
  15.  
  16. for(String line: lines){
  17. sb.insert(sb.length(), line);//line.replaceAll(" ", "")
  18. }
  19.  
  20. String[] binAscii = new String[sb.length()];
  21. for (int i = 0; i < binAscii.length; i++ ){
  22. binAscii[i] = Integer.toBinaryString((int) sb.toString().charAt(i));
  23. System.out.println(sb.toString().charAt(i) + " " + (int) sb.toString().charAt(i) + " " + binAscii[i]);
  24. }
  25.  
  26. FileWriter writer = new FileWriter("src//zaschita1//output1.txt", false);
  27. for (int i = 0; i < binAscii.length; i ++){
  28. for (int j = 0; j < binAscii[i].length(); j ++){
  29. writer.append(binAscii[i].charAt(j) == '1' ? ' ' : '\0');
  30. }
  31. writer.append('\n');
  32. }
  33. writer.flush();
  34. }
  35.  
  36. public static void dekodirovanie() throws Exception{
  37. System.out.println("\nDecodirovanie: ");
  38. List<String> lines = Files.readAllLines(Paths.get("src//zaschita1//output1.txt"), StandardCharsets.UTF_8);
  39. StringBuilder sb = new StringBuilder();
  40.  
  41. String[] s;
  42. s = new String[lines.size()];
  43. System.out.println();
  44. //System.out.println("lines.size: " + lines.size());
  45.  
  46. int k = 0;
  47. for(String line: lines){
  48. for(int i = 0; i < line.length(); i ++){
  49. if(line.charAt(i) == ' '){
  50. sb.insert(sb.length(), '1');
  51. }
  52. else {
  53. sb.insert(sb.length(), '0');
  54. }
  55. }
  56. s[k] = sb.toString();
  57. System.out.println("s[" + k + "]: " + s[k] + "\n");
  58. k++;
  59. sb.delete(0, sb.length()-1);
  60. }
  61.  
  62. int[] asciiCode = new int[lines.size()];
  63. //
  64. StringBuilder res = new StringBuilder();
  65. for (int i = 0; i < asciiCode.length; i++ ){
  66. asciiCode[i] = (char)Integer.parseInt(s[i], 2);
  67. System.out.println("ascii: " + asciiCode[i]);
  68. res.insert(res.length(), (char)asciiCode[i]);
  69. System.out.println("char: " + res.toString());
  70. }
  71.  
  72. FileWriter writer = new FileWriter("src//zaschita1//output2.txt", false);
  73. writer.append(res.toString());
  74.  
  75. writer.flush();
  76. }
  77. public static void main(String[] args) throws Exception{
  78. kodirovanie();
  79. dekodirovanie();
  80. }
  81.  
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement