Untitled

 avatar
unknown
csharp
a year ago
3.1 kB
0
Indexable
using System;
using System.Collections.Generic;

class File
{
    public string Name { get; set; }
    public int Size { get; set; }

    public File(string name, int size)
    {
        Name = name;
        Size = size;
    }
}

class FileSystem
{
    private List<File> files;

    public FileSystem()
    {
        files = new List<File>();
    }

    public void CreateFile(string fileName, int fileSize)
    {
        File newFile = new File(fileName, fileSize);
        files.Add(newFile);
        Console.WriteLine($"File '{fileName}' created successfully.");
    }

    public void DeleteFile(string fileName)
    {
        File fileToDelete = files.Find(f => f.Name == fileName);
        if (fileToDelete != null)
        {
            files.Remove(fileToDelete);
            Console.WriteLine($"File '{fileName}' deleted successfully.");
        }
        else
        {
            Console.WriteLine($"File '{fileName}' not found.");
        }
    }

    public void CopyFile(string sourceFileName, string destinationFileName)
    {
        File sourceFile = files.Find(f => f.Name == sourceFileName);
        if (sourceFile != null)
        {
            File newFile = new File(destinationFileName, sourceFile.Size);
            files.Add(newFile);
            Console.WriteLine($"File '{sourceFileName}' copied to '{destinationFileName}' successfully.");
        }
        else
        {
            Console.WriteLine($"File '{sourceFileName}' not found.");
        }
    }

    public void MoveFile(string sourceFileName, string destinationFileName)
    {
        CopyFile(sourceFileName, destinationFileName);
        DeleteFile(sourceFileName);
        Console.WriteLine($"File '{sourceFileName}' moved to '{destinationFileName}' successfully.");
    }

    public void RenameFile(string fileName, string newFileName)
    {
        File fileToRename = files.Find(f => f.Name == fileName);
        if (fileToRename != null)
        {
            fileToRename.Name = newFileName;
            Console.WriteLine($"File '{fileName}' renamed to '{newFileName}' successfully.");
        }
        else
        {
            Console.WriteLine($"File '{fileName}' not found.");
        }
    }

    public void ListFiles()
    {
        Console.WriteLine("Files in the file system:");
        foreach (var file in files)
        {
            Console.WriteLine($"- {file.Name} ({file.Size} bytes)");
        }
    }
}

class Program
{
    static void Main(string[] args)
    {
        FileSystem fileSystem = new FileSystem();

        fileSystem.CreateFile("file1.txt", 1024);
        fileSystem.CreateFile("file2.txt", 2048);
        fileSystem.CreateFile("file3.txt", 512);

        fileSystem.ListFiles();

        fileSystem.CopyFile("file1.txt", "file1_copy.txt");
        fileSystem.ListFiles();

        fileSystem.MoveFile("file2.txt", "file2_moved.txt");
        fileSystem.ListFiles();

        fileSystem.RenameFile("file3.txt", "new_file3.txt");
        fileSystem.ListFiles();
    }
}