using System.IO.Compression;
using System.Threading.Tasks;
private static string arbitraryString = @"I am
private const string FILE_NAME = "File.txt";
private static string PathToFile
var pathToDirectory = Environment.CurrentDirectory;
return Path.Combine(pathToDirectory, FILE_NAME);
public static void Main()
CreateFileIfExistsAndAppendText(PathToFile, arbitraryString);
Console.WriteLine(OpenFileAndReturnData(PathToFile));
Parallel.Invoke(() => OpenFileAndReturnDataAync(PathToFile).Wait());
private static void CreateFileIfExistsAndAppendText(string path, string text)
var stream = File.Create(path);
File.AppendAllText(path, text);
private static string OpenFileAndReturnData(string path)
throw new FileNotFoundException();
var streamReader = new StreamReader(File.OpenRead(path));
var text = streamReader.ReadToEnd();
private static async Task<string> OpenFileAndReturnDataAync(string path)
throw new FileNotFoundException();
var streamReader = new StreamReader(File.OpenRead(path));
var text = await streamReader.ReadToEndAsync();