public static void WriteDataToBinary(DataNode node, BinaryWriter bw, Dictionary <string, int> header)
 {
     if (node == null)
     {
         throw new ArgumentNullException();
     }
     if (string.IsNullOrEmpty(node.Content))
     {
         if (node.Nodes == null || node.Nodes.Count == 0)
         {
             DataNodeBinary.WriteEmptyNode(node, bw, header);
         }
         else
         {
             DataNodeBinary.WriteSubNodes(node, bw, header);
         }
     }
     else
     {
         DataNodeBinary.WriteContentNode(node, bw, header);
     }
 }