Philiprehberger.UnitConverter
0.2.0
dotnet add package Philiprehberger.UnitConverter --version 0.2.0
NuGet\Install-Package Philiprehberger.UnitConverter -Version 0.2.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="Philiprehberger.UnitConverter" Version="0.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Philiprehberger.UnitConverter" Version="0.2.0" />
<PackageReference Include="Philiprehberger.UnitConverter" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Philiprehberger.UnitConverter --version 0.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Philiprehberger.UnitConverter, 0.2.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.
#:package Philiprehberger.UnitConverter@0.2.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Philiprehberger.UnitConverter&version=0.2.0
#tool nuget:?package=Philiprehberger.UnitConverter&version=0.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Philiprehberger.UnitConverter
Type-safe unit conversions for length, weight, temperature, volume, data size, speed, pressure, area, and energy.
Installation
dotnet add package Philiprehberger.UnitConverter
Usage
Length Conversion
using Philiprehberger.UnitConverter;
double miles = Convert.From(5.0, Length.Kilometers).To(Length.Miles);
// 3.106855...
Temperature Conversion
using Philiprehberger.UnitConverter;
double fahrenheit = Convert.From(100.0, Temperature.Celsius).To(Temperature.Fahrenheit);
// 212.0
double kelvin = Convert.From(0.0, Temperature.Celsius).To(Temperature.Kelvin);
// 273.15
Data Size Formatting
using Philiprehberger.UnitConverter;
string result = Convert.Format(2_500_000.0, DataSize.Bytes, DataSize.MB, "F2");
// "2.38 MB"
Pressure Conversion
using Philiprehberger.UnitConverter;
double bar = Convert.From(101325.0, Pressure.Pascals).To(Pressure.Bar);
// 1.01325
double psi = Convert.From(1.0, Pressure.Atmosphere).To(Pressure.PSI);
// 14.696...
Area Conversion
using Philiprehberger.UnitConverter;
double acres = Convert.From(1.0, Area.SquareKilometers).To(Area.Acres);
// 247.105...
double hectares = Convert.From(10000.0, Area.SquareMeters).To(Area.Hectares);
// 1.0
Energy Conversion
using Philiprehberger.UnitConverter;
double calories = Convert.From(4.184, Energy.Joules).To(Energy.Calories);
// 1.0
double kwh = Convert.From(3600000.0, Energy.Joules).To(Energy.KilowattHours);
// 1.0
API
| Member | Description |
|---|---|
Convert.From(double value, IUnit unit) |
Starts a conversion from the given value and unit, returns a ConversionBuilder. |
Convert.Format(double value, IUnit from, IUnit to, string? format) |
Converts and returns a formatted string with the target unit symbol. |
ConversionBuilder.To(IUnit target) |
Completes the conversion and returns the result as a double. |
IUnit |
Interface representing a unit with Name, Symbol, ToBase, and FromBase. |
Length |
Meters, Kilometers, Centimeters, Millimeters, Inches, Feet, Yards, Miles. |
Weight |
Kilograms, Grams, Milligrams, Pounds, Ounces, Tons. |
Temperature |
Celsius, Fahrenheit, Kelvin. |
Volume |
Liters, Milliliters, Gallons, Quarts, Cups, FluidOunces. |
DataSize |
Bytes, KB, MB, GB, TB, PB. |
Speed |
MetersPerSecond, KilometersPerHour, MilesPerHour, Knots. |
Pressure |
Pascals, Kilopascals, Bar, PSI, Atmosphere, Torr, MillimetersOfMercury. |
Area |
SquareMeters, SquareKilometers, SquareFeet, SquareYards, Acres, Hectares. |
Energy |
Joules, Kilojoules, Calories, Kilocalories, WattHours, KilowattHours, BTU. |
Development
dotnet build src/Philiprehberger.UnitConverter.csproj --configuration Release
Support
If you find this project useful:
License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
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.