Files
Stone_Red-C-Sharp-Utilities/README.md
T
Stone-Red-Code 38d113c361 Added random class
Added random class, new string
extension methods and updated the XAML documentation.
2021-05-10 17:23:47 +02:00

8.9 KiB

Stone_Red-C-Sharp-Utilities

Provides useful C# methods.

Install

Package Manager

Install-Package Stone_Red-C-Sharp-Utilities

.NET CLI

dotnet add package Stone_Red-C-Sharp-Utilities

NuGet

https://www.nuget.org/packages/Stone_Red-C-Sharp-Utilities

Namespaces

Stone_Red_Utilities.CollectionExtentions

Methods

  • Print<T>

    • Description: Prints items of an IEnumerable<T>

    • Parameters: this IEnumerable<T> collection, char delimiter, bool printToDebugConsole

    • Example usage:

      string[] yourArray = { "str1", "str2", "str3" };
      yourArray.Print(';');
      
    • Output:

      str1; str2; str3
      
  • PrintTable<T>

    • Description: Creates and prints table from 2D array

    • Parameters: this T[,] array, TableStyle tableStyle

    • Example usage:

      int[,] your2dArray =
      {
          {1,2,3 },
          {4,5,6 },
          {7,8,9 }
      };
      your2dArray.PrintTable(TableStyle.Default);
      
    • Output:

      -------------
      | 1 | 2 | 3 |
       -------------
      | 4 | 5 | 6 |
      -------------
      | 7 | 8 | 9 |
      -------------
      

Stone_Red_Utilities.ConsoleExtentions

Methods

  • Write
    • Description: Writes the text representation of the specified object to the standard output stream.

    • Parameters: object value, ConsoleColor color

    • Example usage:

      ConsoleExt.Write("text in red", ConsoleColor.Red);
      
    • Output:

      text in red
      

      (Imagine that the text is actually red)

  • WriteLine
    • Description: Writes the text representation of the specified object, followed by the current line terminator, to the standard output stream.

    • Parameters: object value, ConsoleColor color

    • Example usage:

      ConsoleExt.WriteLine("text in green", ConsoleColor.Green);
      
    • Output:

      text in green
      

      (Imagine that the text is actually green)

Stone_Red_Utilities.BoolExtentions

Methods

  • OneWayTrue

    • Description: Sets value to true if input is true. If input is false the value will not change.

    • Parameters: this ref bool bol, bool input

    • Example usage:

      bool bol = false;
      
      bol.OneWayTrue(false);
      Console.WriteLine(bol);
      
      bol.OneWayTrue(true);
      Console.WriteLine(bol);
      
      bol.OneWayTrue(false);
      Console.WriteLine(bol);
      
    • Output:

      False
      True
      True
      
  • OneWayFalse

    • Description: Sets value to false if input is false. If input is true the value will not change.

    • Parameters: this ref bool bol, bool input

    • Example usage:

      bool bol = true;
      
      bol.OneWayFalse(true);
      Console.WriteLine(bol);
      
      bol.OneWayFalse(false);
      Console.WriteLine(bol);
      
      bol.OneWayFalse(true);
      Console.WriteLine(bol);
      
    • Output:

      True
      False
      False
      
  • ToInt

    • Description: Converts bool to int.

    • Parameters: this bool bol

    • Example usage:

      bool bol1 = false;
      bool bol2 = true;
      
      int i = bol1.ToInt();
      int j = bol2.ToInt();
      
      Console.WriteLine(i);
      Console.WriteLine(j);
      
    • Output:

      0
      1
      
  • FromInt

    • Description: Converts int to bool.

    • Parameters: this ref bool bol, int input

    • Example usage:

      bool bol1;
      bool bol2;
      
      bol1.FromInt(0);
      bol2.FromInt(1);
      
      Console.WriteLine(bol1);
      Console.WriteLine(bol2);
      
    • Output:

      false
      true
      

Stone_Red_Utilities.StringExtentions

Methods

  • EqualsIgnoreCase

    • Description: Determines whether this instance and another specified string object have the same value regardless of upper and lower case.

    • Parameters: this string str, string value

    • Example usage:

      string str1 = "BIG";
      string str2 = "big";
      
      bool match = str1.EqualsIgnoreCase(str2);
      
      Console.WriteLine(match);
      
      
    • Output:

      True
      
  • EqualsIgnoreSpaces

    • Description: Determines whether this instance and another specified string object have the same value regardless of spaces.

    • Parameters: this string str, string value

    • Example usage:

      string str1 = "space";
      string str2 = " s p a c e ";
      
      bool match = str1.EqualsIgnoreSpaces(str2);
      
      Console.WriteLine(match);
      
    • Output:

      True
      
  • EqualsIgnoreSpacesAndCase

    • Description: Determines whether this instance and another specified string object have the same value regardless of upper and lower case and spaces.

    • Parameters: this string str, string value

    • Example usage:

      string str1 = "BIG space";
      string str2 = "big s p a c e ";
      
      bool match = str1.EqualsIgnoreSpacesAndCase(str2);
      
      Console.WriteLine(match);
      
      
    • Output:

      True
      
  • ToFileName

    • Description: Determines whether this instance and another specified string object have the same value regardless of upper and lower case and spaces.

    • Parameters: this string str, string value

    • Example usage:

      string str = "*n*/ /äme";
      string fileName = str.ToFileName();
      Console.WriteLine(fileName);
      
    • Output:

      name
      
  • ToPath

    • Description: Determines whether this instance and another specified string object have the same value regardless of upper and lower case and spaces.

    • Parameters: this string str, string value

    • Example usage:

      string str = "C://goöd   /päth";
      string fileName = str.ToPath();
      Console.WriteLine(fileName);
      
    • Output:

      C://good/path
      
  • RemoveWhitespaces

    • Description: Revoves all whitespaces from the specified string

    • Parameters: this string str

    • Example usage:

      string str = "a b c";
      string result = str.RemoveWhitespaces();
      Console.WriteLine(result);
      
    • Output:

      abc
      
  • Reverse

    • Description: Reverses the specified string

    • Parameters: this string str

    • Example usage:

      string str = "em esrever";
      Console.WriteLine(str.Reverse());
      
    • Output:

      reverse me
      

Stone_Red_Utilities.RandomExtentions

Methods

  • NextItem

    • Description: Returns an random item from the specified collection using the Random class

    • Parameters: this Random random, IEnumerable<T> collection

    • Example usage:

      string[] arr = { "test1", "test2", "test3" };
      Random rnd = new Random();
      string randomItem = rnd.NextItem(arr);
      Console.WriteLine(randomItem);
      
    • Output (Will be random every time):

      test2
      
  • NextBool

    • Description: Returns a random bool using the "Random" class

    • Parameters: this Random random, IEnumerable<T> collection

    • Example usage:

      string[] arr = { "test1", "test2", "test3" };
      Random rnd = new Random();
      string randomItem = rnd.NextItem(arr);
      Console.WriteLine(randomItem);
      
    • Output (Will be random every time):

      test2
      
  • NextEnum<T>

    • Description: Returns a random bool using the "Random" class

    • Parameters: this Random random, IEnumerable<T> collection

    • Example usage:

      private enum MyEnum
      {
          a,
          b,
          c
      }
      
      ...
      
      Random rnd = new Random();
      MyEnum randomItem = rnd.NextEnum(new MyEnum());
      Console.WriteLine(randomItem);
      
    • Output (Will be random every time):

      c
      

Stone_Red_Utilities.Logging

Constructor

  • Logger
    • Description: Initializes the logger with the default format and a file path.

    • Parameters: LogTarget logTarg, string file, string defaultFormat

    • Example usage:

      Logger logger = new Logger(LogTarget.ConsoleAndFile, "events.log", "{<dateTime>:HH:mm:ss} | {<level>,-7} | {<source>,-15} | {<message>}");
      

Methods

  • Log
    • Description: Log the message to the specified output

    • Parameters: string message, string source, LogSeverity logSeverity

    • Example usage:

      logger.Log("something happend", "Update manager", LogSeverity.Error);
      
      • Output (Depends on the specified log format):

        19:15:14 | Error   | Update manager  | something happend
        
    • LogIf

      • Description: Log the message to the specified output if the condition is met

      • Parameters: bool condition, string message, string source, LogSeverity logSeverity

      • Example usage:

        logger.Log(IsValid(),"something is invalid", "Update manager", LogSeverity.Error);
        
      • Output (Depends on the specified log format):

        19:15:14 | Error   | Update manager  | something happend
        
    • ClearLogFile

      • Description: Clears the log file

      • Example usage:

        logger.ClearLogFile();