public void decodeText() throws IOException {
        Node node = tree.getRoot();
        int read;
        boolean[] bits;
        while (fis.available() > 0) {
            read = fis.read();
            bits = byteToBits(read);
            for (boolean b : bits) {
                ll.add(b);
            }
        }
        while (ll.size() > 0) {
            boolean b;
            while (!node.isLeaf() && ll.size() > 0) {
                b = ll.poll();
                if (b) {
                    node = node.getRight();
                }
                if (!b) {
                    node = node.getLeft();
                }
            }
            if (node.getSymbol() == '\n') {
                fw.write('\r');
                fw.write('\n');
            } else {
                fw.write(node.getSymbol());
            }
            node = tree.getRoot();
        }
        fw.close();
    }