SpanExtensionsParseT(ReadOnlySpanChar, CultureInfo) Method

Parses an object of type T from a String represented by a ReadOnlySpan<char> value. Firstly, it tries to parse the type natively. If T cannot be parsed natively but the type has a TypeConverter or a registered conversion that can convert from string, then the type converter or conversion will be used.

Definition

Namespace: KGySoft.CoreLibraries
Assembly: KGySoft.CoreLibraries (in KGySoft.CoreLibraries.dll) Version: 8.0.0
C#
public static T Parse<T>(
	this ReadOnlySpan<char> s,
	CultureInfo? culture = null
)

Parameters

s  ReadOnlySpanChar
The ReadOnlySpan<char> value to parse. If represents and T is a reference or nullable type, then the method returns .
culture  CultureInfo  (Optional)
The culture to use for the parsing. If , then the InvariantCulture will be used. This parameter is optional.
Default value: .

Type Parameters

T
The desired type of the return value.

Return Value

T
An instance of T, which is the result of the parsing. A reference can be returned if s represents , and T is a reference or nullable type.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type ReadOnlySpanChar. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

Remarks

The following types are parsed natively:

  Note

Apart from Enum and Type types, no string allocation occurs when parsing any of the types above. When targeting at least .NET 6.0, no string allocation occurs even for Enum types.

New conversions can be registered by the RegisterConversion extension methods. If a registered conversion can convert from string, then it can be used, though in that case a string allocation will occur.

A TypeConverter can be registered by the RegisterTypeConverter extension method. If a type converter can convert from string, then it can be used, though in that case a string allocation will occur.

Exceptions

ArgumentExceptionParameter s cannot be parsed as T.

See Also