Exemple #1
0
        static void Main(string[] args)
        {
            var path = @"C:\Bound-Tree\BoundTree\IntegrationTestsOfTrees\Tests";
            var files = Directory.GetFiles(path);
            foreach (var fileName in files)
            {
                var lines = File.ReadAllLines(fileName).ToList();
                var doubleNode = new MultiTreeParser().GetMultiTree(lines).DoubleNode;
                var outputLines = new DoubleNodeConverter().ConvertDoubleNode(doubleNode);
                File.Delete(fileName);
                File.Create(fileName).Dispose();

                List<string> beforeLines = null;
                var lastNotEmptyIndex = lines.FindLastIndex(line => line != "");
                for (int i = lastNotEmptyIndex; i >= 0; i--)
                {
                    if (lines[i] == "")
                    {
                        beforeLines = lines.Take(i).ToList();
                        beforeLines.Add(Environment.NewLine);
                        break;
                    }

                }

                if (beforeLines == null)
                {
                    throw new FileLoadException();
                }

                File.AppendAllLines(fileName, beforeLines);
                File.AppendAllLines(fileName, outputLines);
            }
        }
 public string ConvertToString(DoubleNode<StringId> tree)
 {
     var lines = new DoubleNodeConverter().ConvertDoubleNode(tree);
     var stringBuilder = new StringBuilder();
     lines.ForEach(line => stringBuilder.AppendLine(line));
     return stringBuilder.ToString();
 }