This commit is contained in:
Александр Бабаев 2023-12-17 10:20:51 +03:00
parent 4502a798d5
commit ce063558c5
3 changed files with 20 additions and 10 deletions

View File

@ -18,10 +18,14 @@ public static class FileExtension
/// </summary> /// </summary>
/// <param name="fileName">Полное имя и путь к файлу</param> /// <param name="fileName">Полное имя и путь к файлу</param>
/// <returns>Размер файла в байтах</returns> /// <returns>Размер файла в байтах</returns>
public static long FileSize(string fileName) public static long FileSize (string fileName) =>
{ new FileInfo(fileName).Length;
FileInfo fileInfo = new (fileName);
return fileInfo.Length; /// <summary>
} /// Получает хэш файла
/// </summary>
/// <param name="fileName">Имя файла</param>
/// <returns>Хэш файла в формате <see cref="FileHash"/></returns>
public static FileHash GetHash (string fileName) =>
new(fileName);
} }

View File

@ -24,10 +24,7 @@ public sealed class FileHash
/// <summary> /// <summary>
/// Простой конструктор /// Простой конструктор
/// </summary> /// </summary>
public FileHash () public FileHash () => Hash = [];
{
Hash = new byte[] { };
}
/// <summary> /// <summary>
/// Хэш файла /// Хэш файла
@ -49,4 +46,13 @@ public sealed class FileHash
UTF8Encoding utf8 = new(); UTF8Encoding utf8 = new();
Hash = utf8.GetBytes(value); Hash = utf8.GetBytes(value);
} }
/// <summary>
/// Сравнивает текущий хэш с хэшем <paramref name="otherHash"/> и выдаёт <see cref="bool.TrueString"/>, если совпадают,
/// и <see cref="bool.FalseString"/>, если не совпадают.
/// </summary>
/// <param name="otherHash">Другой хэш</param>
/// <returns><see cref="bool.TrueString"/>, если совпадают, и <see cref="bool.FalseString"/>, если не совпадают</returns>
public bool IsEqual (FileHash otherHash) =>
string.Equals(ToString(), otherHash.ToString(), StringComparison.OrdinalIgnoreCase);
} }

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<Version>2023.1213.0</Version> <Version>2023.1217.0</Version>
<Authors>Александр Бабаев</Authors> <Authors>Александр Бабаев</Authors>
<Product>Набор компонентов ANB Software</Product> <Product>Набор компонентов ANB Software</Product>
<Description>Библиотека полезных методов языка C#</Description> <Description>Библиотека полезных методов языка C#</Description>