예제 #1
0
 public Native(string pathToScan, string inputFormat, string outputFolder, string outputFormat) : this()
 {
     string[] list = Directory.GetFiles(pathToScan, "*" + inputFormat, SearchOption.AllDirectories);
     foreach (var item in list)
     {
         PandocFile inputFile  = new PandocFile(item, inputFormat);
         PandocFile outputFile = new PandocFile(inputFile);
         outputFile.ChangeFileExtension(outputFormat);
         outputFile.ModifyFilePathRelative(outputFolder, pathToScan);
         Tuple <PandocFile, PandocFile> tuple = new Tuple <PandocFile, PandocFile>(inputFile, outputFile);
         files.Add(tuple);
     }
 }
예제 #2
0
 public void ConvertFiles()
 {
     Parallel.ForEach(files, (item) =>
     {
         PandocFile input  = item.Item1;
         PandocFile output = item.Item2;
         Console.WriteLine("Converting file: " + input.ProvideCompletePath());
         Directory.CreateDirectory(Path.GetDirectoryName(output.ProvideCompletePath()));
         Pandoc process = new Pandoc(input.ProvideCompletePath(), output.ProvideCompletePath(), "", Environment.CurrentDirectory);
         process.Start();
         process.GetOutput();
         if (process.GetExitCode() != 0)
         {
             Console.WriteLine("Error converting file {0}", input.ProvideCompletePath());
         }
     });
 }
예제 #3
0
 public PandocFile(PandocFile copy)
 {
     this.Extension       = copy.Extension;
     this.FileNameAndPath = copy.FileNameAndPath;
 }