diff --git a/README.txt b/README.txt index 3312d13..1579248 100644 --- a/README.txt +++ b/README.txt @@ -10,3 +10,6 @@ do the decoding algorithm. There's also a bunch of explanation about BitWriter, a writer class I made to write bits out, so you can look at the comments for that if you want. + + +UPDATE: Decoder works in conjunction with Encoder for all three test files. Modeled after GeekforGeeks algorithm. - Rhea diff --git a/bin/Decoder.class b/bin/Decoder.class index 5069001..8304955 100644 Binary files a/bin/Decoder.class and b/bin/Decoder.class differ diff --git a/decoded.txt b/decoded.txt index b5bb9c5..7e75d29 100644 --- a/decoded.txt +++ b/decoded.txt @@ -1 +1 @@ -0000011000010000011000100000011000110001000000000001000000100001000000010001000000110001000001100001000001010001000010000001000001000001000010100001000001110001000010110001000010010001000011000001000011110001000011100001000100010001000011010001000100110001000100000001000101000001000100100001000101010001000110000001000101110001000110100001000101100001000111000001000110010001000111010001000110110001000111100001001000010001001000000001000110110000011001000000011001010000011001100000011001110001001000100001000111110001001010100001001010010001001011000001001000110000011000110001001001010001001001110001001011010001001010110001001011100001001100100001001101010001001101000001001101110001001100110001001110010001001101100001001110100001001110000001001110110001001111100001001111010001010000000001001111000001010000100001001111110001010000110001010000010001010001000001010001110001010001100001010010010001010001010001010010110001010010000000011000110000 \ No newline at end of file +abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcdefgabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcdefgabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc \ No newline at end of file diff --git a/encoded.txt b/encoded.txt index 4eef486..6a576f3 100644 Binary files a/encoded.txt and b/encoded.txt differ diff --git a/original.txt b/original.txt index a9ef25d..7e75d29 100644 --- a/original.txt +++ b/original.txt @@ -1 +1 @@ -abcabcabcabcabcabcabcabcabcabcabcabc \ No newline at end of file +abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcdefgabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcdefgabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc \ No newline at end of file diff --git a/src/Decoder.java b/src/Decoder.java index aaea854..7768137 100644 --- a/src/Decoder.java +++ b/src/Decoder.java @@ -2,20 +2,72 @@ import java.io.*; public class Decoder { + //public static final int BITS = 12; public static void main(String[] args) throws IOException{ // TODO Auto-generated method stub FileInputStream in = new FileInputStream("encoded.txt");//reader PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("decoded.txt"))); + HashMap decodeMap = new HashMap(); + int counter = 0; - StringBuilder ans = new StringBuilder(); + for (int i=0; i<256; i++) //initializing existing ascii values in hashmap + { + decodeMap.put(counter,String.valueOf((char)(i))); + counter++; + } + + //bits to binary + StringBuilder binary = new StringBuilder(); byte[] bits = in.readAllBytes(); for(int i =0;i