DotNetRandomStringGenerator 1.9.0

dotnet add package DotNetRandomStringGenerator --version 1.9.0                
NuGet\Install-Package DotNetRandomStringGenerator -Version 1.9.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DotNetRandomStringGenerator" Version="1.9.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DotNetRandomStringGenerator --version 1.9.0                
#r "nuget: DotNetRandomStringGenerator, 1.9.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DotNetRandomStringGenerator as a Cake Addin
#addin nuget:?package=DotNetRandomStringGenerator&version=1.9.0

// Install DotNetRandomStringGenerator as a Cake Tool
#tool nuget:?package=DotNetRandomStringGenerator&version=1.9.0                

DotNetRandomStringGenerator

Version 1.9.0

Authors : Jeff Shergalis Lakhya Jyoti Nath (ljnath)

Date : September 2020 - October 2024

Introduction

DotNetRandomStringGenerator is a library developed in .NET Framework to generate N random strings of M length from various categories. It is fast and suports string generation of various length.<br><br> It is parameterized to generate both a single or a list of random strings.<br> Random strings can be of types alphabet and alphanumeric supporting all the cases viz. lower, upper and mixed.<br> It also supports symbol during the random string generation process. Following are the list of supported symbols <br> !#$%&'()*+,-./:;<=>?@[]^_`{|}~"

It also allows you to generate random string with only a subset of symbols from the above supported list. It is an ideal use for project like

  • password generator
  • mobile number generator
  • unique-id generator
  • unique filename generator
  • raw data generator for data processing/parsing projects
  • fake name generator etc. etc.

Features

  • Supports single or multiple random string generation
  • Supports random string generation from alphabet, numbers, symbols or a combination of them
  • Supports customized length of randon string
  • Supports random length of generated strings with a fixed max length
  • Supports true unique random number generation (v1.3.0)
  • Built with compilation conditions to take advantage of newer .NET Framework functionalities
  • Improved performance in newer .NET Framework ( >2.0)
  • Added support to force include strings of each type (version 1.4.0)
  • Supports .NET Framework 2.0 - .NET 8.0

Supported Types

  • NUMBER : 0123456789
  • SYMBOLS : !#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHABET_LOWERCASE : abcdefghijklmnopqrstuvwxyz
  • ALPHABET_UPPERCASE : ABCDEFGHIJKLMNOPQRSTUVWXYZ
  • ALPHABET_MIXEDCASE : abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
  • ALPHANUMERIC_LOWERCASE : abcdefghijklmnopqrstuvwxyz0123456789
  • ALPHANUMERIC_UPPERCASE : ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
  • ALPHANUMERIC_MIXEDCASE : abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
  • ALPHABET_LOWERCASE_WITH_SYMBOLS : abcdefghijklmnopqrstuvwxyz!#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHABET_UPPERCASE_WITH_SYMBOLS : ABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHABET_MIXEDCASE_WITH_SYMBOLS : abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHANUMERIC_LOWERCASE_WITH_SYMBOLS : abcdefghijklmnopqrstuvwxyz0123456789!#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHANUMERIC_UPPERCASE_WITH_SYMBOLS : ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&'()*+,-./:;<=>?@[]^_`{|}~"
  • ALPHANUMERIC_MIXEDCASE_WITH_SYMBOLS : abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" !#$%&'()*+,-./:;<=>?@[]^_`{|}~"

Get Started

1. Install Package

PM> Install-Package DotNetRandomStringGenerator

2. Add reference in your project

3. Call the methods in your program

using RandomString4Net;

namespace RandomString4NetTester
{
    public void Main()
    {
        // generating one random string from lowercase alphabets
        string randomString = RandomString.GetString(Types.ALPHABET_LOWERCASE);
        System.Console.WriteLine(randomString);

        // generating 100 random string from all mixedcase alphabet, numbers and all supported symbols
        List<string> randomAlphaNumbericStrings = RandomString.GetStrings(Types.ALPHANUMERIC_MIXEDCASE_WITH_SYMBOLS, 100);
        foreach (string s in randomAlphaNumbericStrings)
            System.Console.WriteLine(s);

        // generating 200 random string from uppercase alphabet with custom symbols
        List<string> randomAlphabetWithCustomSymbols = RandomString.GetStrings(Types.ALPHABET_UPPERCASE, 200, "/+*-");
        foreach (string s in randomAlphabetWithCustomSymbols)
            System.Console.WriteLine(s);

        // generating 1000 true random strings of length 20 from uppercase alphabet with custom symbols
        List<string> trueUniqueRandomStrings = RandomString.GetStrings(Types.ALPHABET_UPPERCASE, 1000, 20, false, true);
        foreach (string s in trueUniqueRandomStrings)
            System.Console.WriteLine(s);

        // generating 100 random string of mixedcase alphanummeric with custom symbols
        List<string> randomAlphabetWithCustomSymbols = RandomString.GetStrings(Types.ALPHANUMERIC_MIXEDCASE_WITH_SYMBOLS, 100, "/+*-", forceOccuranceOfEachType: true);
        foreach (string s in randomAlphabetWithCustomSymbols)
            System.Console.WriteLine(s);
    }
}

Give a Star! ⭐️

If you find this repository useful, please give it a star. Thanks in advance !

License

Copyright © 2024 Stuce Software Solutions under the MIT License.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net20 is compatible.  net35 was computed.  net40 was computed.  net403 was computed.  net45 was computed.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 2.0

    • No dependencies.
  • .NETStandard 2.0

    • No dependencies.
  • .NETStandard 2.1

    • No dependencies.
  • net6.0

    • No dependencies.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.9.0 99 10/1/2024

- Changed targets to .NET Framework 2.0, .NET Standard 2.0, .NET Standard 2.1, .NET 6.0 and .NET 8.0
       - Added support for .NET 8.0
       - Added support for RandomNumberGenerator in .NET 6.0 and higher as RNGCryptoServiceProvider is marked as obsolete
       - Added support for .NET Standard (>2.0)
       - Added support for .NET Core (>2.2)
       - Added support for .NET (>5.0)
       - Added support to generate random strings by including strings of each type
       - Added performance improvement for .NET Framework > 2.0
       - Added support to generate true unique random numbers
       - Added support for multiple .NET Framework
       - Added support for random number generation
       - Initial release with support for alphabet, alphanumeric with any without symbols for all cases