Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReadAllBytesAsync()

static Task< byte[]> System.IO.File.ReadAllBytesAsync ( string path,
CancellationToken cancellationToken = default(CancellationToken) )
inlinestatic

Definition at line 724 of file File.cs.

725 {
726 if (cancellationToken.IsCancellationRequested)
727 {
728 return Task.FromCanceled<byte[]>(cancellationToken);
729 }
730 FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read, 1, FileOptions.Asynchronous | FileOptions.SequentialScan);
731 bool flag = false;
732 try
733 {
734 long length = fileStream.Length;
735 if (length > int.MaxValue)
736 {
737 IOException ex = new IOException(SR.IO_FileTooLong2GB);
739 return Task.FromException<byte[]>(ex);
740 }
741 flag = true;
743 }
744 finally
745 {
746 if (!flag)
747 {
748 fileStream.Dispose();
749 }
750 }
751 }
static async Task< byte[]> InternalReadAllBytesAsync(FileStream fs, int count, CancellationToken cancellationToken)
Definition File.cs:753
static async Task< byte[]> InternalReadAllBytesUnknownLengthAsync(FileStream fs, CancellationToken cancellationToken)
Definition File.cs:773
static Task FromException(Exception exception)
Definition Task.cs:3341
static Task FromCanceled(CancellationToken cancellationToken)
Definition Task.cs:3363

References System.cancellationToken, System.Threading.Tasks.Task< TResult >.FromCanceled(), System.Threading.Tasks.Task< TResult >.FromException(), System.IO.File.InternalReadAllBytesAsync(), System.IO.File.InternalReadAllBytesUnknownLengthAsync(), System.SR.IO_FileTooLong2GB, System.length, and System.Runtime.ExceptionServices.ExceptionDispatchInfo.SetCurrentStackTrace().