Exemple #1
0
        private string GetRawTextTask(CancellationTokenSource cts, string path)
        {
            var result = Task.Run(async() =>
            {
                var rawText = await Task.Run(() => FileProcessingServices.GetRawFileText(path));
                cts.Cancel();
                return(rawText);
            });

            return(result.Result);
        }
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            var path = (string)value;

            if (File.Exists(path))
            {
                return(FileProcessingServices.GetRawFileText(path));
            }

            return(Constants.NO_FILE_SELECTED);
        }
Exemple #3
0
        public CsvFile(string absFilePath, BackgroundWorker worker = null)
        {
            var transformedFile = FileProcessingServices.CsvFileFromAbsPath(absFilePath, blockIdentifiers, delimiters, worker);

            AbsPath              = transformedFile.AbsPath;
            HeaderIndex          = transformedFile.HeaderIndex;
            HeadersStrings       = transformedFile.HeadersStrings;
            Delimiter            = transformedFile.Delimiter;
            BlockIdentifier      = transformedFile.BlockIdentifier;
            ColumnCount          = transformedFile.ColumnCount;
            Lines                = transformedFile.Lines;
            ColumnConfigurations = transformedFile.ColumnConfigurations;
        }
Exemple #4
0
        private string ConvertCsvFileToTextTask(CsvFile csvFile, IProgress <int> progress)
        {
            return(Task.Run(async() =>
            {
                var stringBuilder = new StringBuilder(FileProcessingServices.HeadersLineToStringLine(csvFile));

                for (int i = 0; i < csvFile.Lines.Count; i++)
                {
                    var processedLine = await Task.Run(() => FileProcessingServices.CsvLineToString(csvFile.Lines[i], csvFile.Delimiter, csvFile.BlockIdentifier));

                    progress.Report(i + 1);

                    stringBuilder.Append(processedLine);

                    if (i < csvFile.Lines.Count - 1)
                    {
                        stringBuilder.Append(Environment.NewLine);
                    }
                }

                return stringBuilder.ToString();
            }).Result);
        }