Дмитрий Королев:
try
{
using (var fstream = new FileStream("saves.txt", System.IO.FileMode.Open, System.IO.FileAccess.Read))
using (var reader = new StreamReader(fstream))
reader.ReadToEnd();
}
catch(System.IO.FileNotFoundException)
{
//File is not founded
}
catch(Exception)
{
//Anyone exception
}
Дмитрий Королев: хотя бы так. Dispose выполняется, ошибки отлавливаются. Если нужно исключение которое вызывается отсутствием разрешения на чтение, то добавляешь перед первым или вторым блоком catch еще один с этим типом исключения.
Дмитрий Королев: А под юнити всё точно так же, разве что некоторые асинхронные способы не доступны. Вам скорее всего с лихвой хватит связки File.ReadAllText и File.WriteAllText.