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); }
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; }
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); }