|
|
@@ -223,7 +223,7 @@ namespace ControlCatalog.Pages
|
|
|
ShowOverwritePrompt = false
|
|
|
});
|
|
|
|
|
|
- if (file is not null && file.CanOpenWrite)
|
|
|
+ if (file is not null)
|
|
|
{
|
|
|
// Sync disposal of StreamWriter is not supported on WASM
|
|
|
#if NET6_0_OR_GREATER
|
|
|
@@ -298,31 +298,26 @@ namespace ControlCatalog.Pages
|
|
|
if (item is IStorageFile file)
|
|
|
{
|
|
|
resultText += @$"
|
|
|
- CanOpenRead: {file.CanOpenRead}
|
|
|
- CanOpenWrite: {file.CanOpenWrite}
|
|
|
Content:
|
|
|
";
|
|
|
- if (file.CanOpenRead)
|
|
|
- {
|
|
|
#if NET6_0_OR_GREATER
|
|
|
- await using var stream = await file.OpenReadAsync();
|
|
|
+ await using var stream = await file.OpenReadAsync();
|
|
|
#else
|
|
|
- using var stream = await file.OpenReadAsync();
|
|
|
+ using var stream = await file.OpenReadAsync();
|
|
|
#endif
|
|
|
- using var reader = new System.IO.StreamReader(stream);
|
|
|
+ using var reader = new System.IO.StreamReader(stream);
|
|
|
|
|
|
- // 4GB file test, shouldn't load more than 10000 chars into a memory.
|
|
|
- const int length = 10000;
|
|
|
- var buffer = ArrayPool<char>.Shared.Rent(length);
|
|
|
- try
|
|
|
- {
|
|
|
- var charsRead = await reader.ReadAsync(buffer, 0, length);
|
|
|
- resultText += new string(buffer, 0, charsRead);
|
|
|
- }
|
|
|
- finally
|
|
|
- {
|
|
|
- ArrayPool<char>.Shared.Return(buffer);
|
|
|
- }
|
|
|
+ // 4GB file test, shouldn't load more than 10000 chars into a memory.
|
|
|
+ const int length = 10000;
|
|
|
+ var buffer = ArrayPool<char>.Shared.Rent(length);
|
|
|
+ try
|
|
|
+ {
|
|
|
+ var charsRead = await reader.ReadAsync(buffer, 0, length);
|
|
|
+ resultText += new string(buffer, 0, charsRead);
|
|
|
+ }
|
|
|
+ finally
|
|
|
+ {
|
|
|
+ ArrayPool<char>.Shared.Return(buffer);
|
|
|
}
|
|
|
}
|
|
|
|