示例#1
0
        private void writeCompressedFile(Dictionary <int, List <String> > symbolDictionary, BitWriter bitWriter)
        {
            writeheader(bitWriter);

            Dictionary <int, List <String> > dictionaryFromInput = getDictionaryElements();

            int valueIndex = 0;

            foreach (KeyValuePair <int, List <String> > symbol in dictionaryFromInput)
            {
                var element = (symbol.Key != noOfSymbols) ? symbol.Value[1] : symbol.Value[0][0].ToString();
                valueIndex = getIndexFromDictionary(symbolDictionary, element);
                bitWriter.writeNBits(valueIndex, index);
            }

            bitWriter.writeNBits(0, 7);
        }
示例#2
0
 private void writeDecompressedDataToFile(List <String> results, BitWriter bitWriter)
 {
     foreach (String result in results)
     {
         for (int i = 0; i < result.Length; i++)
         {
             bitWriter.writeNBits(result[i], 8);
         }
     }
 }
示例#3
0
 private void writeheader(BitWriter bitWriter)
 {
     bitWriter.writeBit(freeze);
     bitWriter.writeNBits(index, 4);
 }