Files
StructureHelper/DataAccess/FileDialogs/ProgramExample.cs
2024-09-06 18:13:21 +05:00

63 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DataAccess.FileDialogs
{
using System;
using System.IO;
using System.Text;
using System.Threading.Tasks;
class ProgramExample
{
static async Task Main(string[] args)
{
string storagePath = Path.Combine(Environment.CurrentDirectory, "UserFiles");
IFileRepository fileRepository = new FileRepository(storagePath);
// Save a file
string fileName = "example.txt";
using (var fileStream = new MemoryStream(Encoding.UTF8.GetBytes("Hello, World!")))
{
await fileRepository.SaveFileAsync(fileStream, fileName);
Console.WriteLine($"File '{fileName}' saved.");
}
// Retrieve a file
using (Stream retrievedFile = await fileRepository.GetFileAsync(fileName))
{
using (var reader = new StreamReader(retrievedFile))
{
string content = await reader.ReadToEndAsync();
Console.WriteLine($"Retrieved file content: {content}");
}
}
// Update a file
using (var updateStream = new MemoryStream(Encoding.UTF8.GetBytes("Updated content!")))
{
await fileRepository.UpdateFileAsync(updateStream, fileName);
Console.WriteLine($"File '{fileName}' updated.");
}
// Retrieve updated file
using (Stream updatedFile = await fileRepository.GetFileAsync(fileName))
{
using (var reader = new StreamReader(updatedFile))
{
string updatedContent = await reader.ReadToEndAsync();
Console.WriteLine($"Updated file content: {updatedContent}");
}
}
// Delete a file
await fileRepository.DeleteFileAsync(fileName);
Console.WriteLine($"File '{fileName}' deleted.");
}
}
}