指定したカルチャに固有の書式情報を使用して、指定した String 形式の数値を、それと等価な 32 ビット符号なし整数に変換します。
このメソッドは、CLS と互換性がありません。CLS との互換性に関する詳細については 「共通言語仕様の概要」 を参照してください。
<CLSCompliant(False)>
Overloads Public Shared Function ToUInt32( _ ByVal value As String, _ ByVal provider As IFormatProvider _) As UInt32
[C#]
[CLSCompliant(false)]
public static uint ToUInt32(stringvalue,IFormatProviderprovider);
[C++]
[CLSCompliant(false)]
public: static unsigned int ToUInt32(String* value,IFormatProvider* provider);
[JScript]
public
CLSCompliant(false)
static function ToUInt32(value : String,provider : IFormatProvider) : UInt32;
パラメータ
- value
変換する数値を格納している String 。 - provider
カルチャに固有の書式情報を提供する IFormatProvider インターフェイス実装。
戻り値
value の値と等価な 32 ビット符号なし整数。
または
value が null 参照 (Visual Basic では Nothing) の場合は 0。
例外
例外の種類 | 条件 |
---|---|
FormatException | value の構成が、省略可能な符号と、それに続く 0 から 9 までの一連の数字ではありません。 |
OverflowException | value が MinValue 未満の数値か、 MaxValue より大きい数値を表しています。 |
解説
戻り値は、value に対して UInt32.Parse メソッドを実行した結果です。
provider は、 NumberFormatInfo オブジェクトを取得する IFormatProvider インスタンスです。 NumberFormatInfo オブジェクトは、value の書式に関するカルチャに固有の情報を提供します。 provider が null 参照 (Visual Basic では Nothing) の場合は、現在のカルチャの NumberFormatInfo が使用されます。
使用例
[Visual Basic, C#, C++] IFormatProvider オブジェクトを使用し、 String 形式の UInt32 (32 ビット符号なし整数) を ToUInt32 メソッドで変換するコード例を次に示します。
' Example of the Convert.ToUInt32( String ) and
' Convert.ToUInt32( String, IFormatProvider ) methods.
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic
Module ToUInt32ProviderDemo
Dim format As String = "{0,-22}{1,-20}{2}"
' Get the exception type name; remove the namespace prefix.
Function GetExceptionType( ex As Exception ) As String
Dim exceptionType As String = ex.GetType( ).ToString( )
Return exceptionType.Substring( _
exceptionType.LastIndexOf( "."c ) + 1 )
End Function
Sub ConvertToUInt32( numericStr As String, _
provider As IFormatProvider )
Dim defaultValue As Object
Dim providerValue As Object
' Convert numericStr to UInt32 without a format provider.
Try
defaultValue = Convert.ToUInt32( numericStr )
Catch ex As Exception
defaultValue = GetExceptionType( ex )
End Try
' Convert numericStr to UInt32 with a format provider.
Try
providerValue = Convert.ToUInt32( numericStr, provider )
Catch ex As Exception
providerValue = GetExceptionType( ex )
End Try
Console.WriteLine( format, numericStr, _
defaultValue, providerValue )
End Sub
Sub Main( )
' Create a NumberFormatInfo object and set several of its
' properties that apply to numbers.
Dim provider As NumberFormatInfo = new NumberFormatInfo( )
' These properties affect the conversion.
provider.PositiveSign = "pos "
provider.NegativeSign = "neg "
' These properties do not affect the conversion.
' The input string cannot have decimal and group separators.
provider.NumberDecimalSeparator = "."
provider.NumberGroupSeparator = ","
provider.NumberGroupSizes = New Integer( ) { 3 }
Console.WriteLine( "This example of" & vbCrLf & _
" Convert.ToUInt32( String ) and " & vbCrLf & _
" Convert.ToUInt32( String, IFormatProvider ) " & _
vbCrLf & "generates the following output. It " & _
"converts several strings to unsigned " & vbCrLf & _
"Integer values, using default formatting " & _
"or a NumberFormatInfo object." & vbCrLf )
Console.WriteLine( format, "String to convert", _
"Default/exception", "Provider/exception" )
Console.WriteLine( format, "-----------------", _
"-----------------", "------------------" )
' Convert strings, with and without an IFormatProvider.
ConvertToUInt32( "123456789", provider )
ConvertToUInt32( "+123456789", provider )
ConvertToUInt32( "pos 123456789", provider )
ConvertToUInt32( "123456789.", provider )
ConvertToUInt32( "123,456,789", provider )
ConvertToUInt32( "4294967295", provider )
ConvertToUInt32( "4294967296", provider )
ConvertToUInt32( "-1", provider )
End Sub
End Module
' This example of
' Convert.ToUInt32( String ) and
' Convert.ToUInt32( String, IFormatProvider )
' generates the following output. It converts several strings to unsigned
' Integer values, using default formatting or a NumberFormatInfo object.
'
' String to convert Default/exception Provider/exception
' ----------------- ----------------- ------------------
' 123456789 123456789 123456789
' +123456789 123456789 FormatException
' pos 123456789 FormatException 123456789
' 123456789. FormatException FormatException
' 123,456,789 FormatException FormatException
' 4294967295 4294967295 4294967295
' 4294967296 OverflowException OverflowException
' -1 OverflowException FormatException
[C#]
// Example of the Convert.ToUInt32( string ) and
// Convert.ToUInt32( string, IFormatProvider ) methods.
using System;
using System.Globalization;
class ToUInt32ProviderDemo
{
static string format = "{0,-22}{1,-20}{2}";
// Get the exception type name; remove the namespace prefix.
static string GetExceptionType( Exception ex )
{
string exceptionType = ex.GetType( ).ToString( );
return exceptionType.Substring(
exceptionType.LastIndexOf( '.' ) + 1 );
}
static void ConvertToUInt32( string numericStr,
IFormatProvider provider )
{
object defaultValue;
object providerValue;
// Convert numericStr to UInt32 without a format provider.
try
{
defaultValue = Convert.ToUInt32( numericStr );
}
catch( Exception ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to UInt32 with a format provider.
try
{
providerValue = Convert.ToUInt32( numericStr, provider );
}
catch( Exception ex )
{
providerValue = GetExceptionType( ex );
}
Console.WriteLine( format, numericStr,
defaultValue, providerValue );
}
public static void Main( )
{
// Create a NumberFormatInfo object and set several of its
// properties that apply to numbers.
NumberFormatInfo provider = new NumberFormatInfo();
// These properties affect the conversion.
provider.NegativeSign = "neg ";
provider.PositiveSign = "pos ";
// These properties do not affect the conversion.
// The input string cannot have decimal and group separators.
provider.NumberDecimalSeparator = ".";
provider.NumberGroupSeparator = ",";
provider.NumberGroupSizes = new int[ ] { 3 };
Console.WriteLine("This example of\n" +
" Convert.ToUInt32( string ) and \n" +
" Convert.ToUInt32( string, IFormatProvider ) " +
"\ngenerates the following output. It converts " +
"several strings to \nuint values, using " +
"default formatting or a NumberFormatInfo object.\n" );
Console.WriteLine( format, "String to convert",
"Default/exception", "Provider/exception" );
Console.WriteLine( format, "-----------------",
"-----------------", "------------------" );
// Convert strings, with and without an IFormatProvider.
ConvertToUInt32( "123456789", provider );
ConvertToUInt32( "+123456789", provider );
ConvertToUInt32( "pos 123456789", provider );
ConvertToUInt32( "123456789.", provider );
ConvertToUInt32( "123,456,789", provider );
ConvertToUInt32( "4294967295", provider );
ConvertToUInt32( "4294967296", provider );
ConvertToUInt32( "-1", provider );
}
}
/*
This example of
Convert.ToUInt32( string ) and
Convert.ToUInt32( string, IFormatProvider )
generates the following output. It converts several strings to
uint values, using default formatting or a NumberFormatInfo object.
String to convert Default/exception Provider/exception
----------------- ----------------- ------------------
123456789 123456789 123456789
+123456789 123456789 FormatException
pos 123456789 FormatException 123456789
123456789. FormatException FormatException
123,456,789 FormatException FormatException
4294967295 4294967295 4294967295
4294967296 OverflowException OverflowException
-1 OverflowException FormatException
*/
[C++]
// Example of the Convert::ToUInt32( String* ) and
// Convert::ToUInt32( String*, IFormatProvider* ) methods.
#using <mscorlib.dll>
using namespace System;
using namespace System::Globalization;
const __wchar_t* protoFmt = L"{0,-22}{1,-20}{2}" ;
// Get the exception type name; remove the namespace prefix.
String* GetExceptionType( Exception* ex )
{
String* exceptionType = ex->GetType( )->ToString( );
return exceptionType->Substring(
exceptionType->LastIndexOf( '.' ) + 1 );
}
void ConvertToUInt32( String* numericStr, IFormatProvider* provider )
{
Object* defaultValue;
Object* providerValue;
// Convert numericStr to UInt32 without a format provider.
try
{
defaultValue = __box( Convert::ToUInt32( numericStr ) );
}
catch( Exception* ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to UInt32 with a format provider.
try
{
providerValue = __box( Convert::ToUInt32(
numericStr, provider ) );
}
catch( Exception* ex )
{
providerValue = GetExceptionType( ex );
}
Console::WriteLine( new String( protoFmt ), numericStr,
defaultValue, providerValue );
}
void main( )
{
// Create a NumberFormatInfo object and set several of its
// properties that apply to numbers.
NumberFormatInfo* provider = new NumberFormatInfo( );
// These properties affect the conversion.
provider->NegativeSign = S"neg ";
provider->PositiveSign = S"pos ";
// These properties do not affect the conversion.
// The input string cannot have decimal and group separators.
provider->NumberDecimalSeparator = S".";
provider->NumberGroupSeparator = S",";
Int32 sizes __gc [ ] = { 3 };
provider->NumberGroupSizes = sizes;
Console::WriteLine(S"This example of\n"
S" Convert::ToUInt32( String* ) and \n"
S" Convert::ToUInt32( String*, IFormatProvider* ) "
S"\ngenerates the following output. It converts "
S"several strings to unsigned \nint values, using "
S"default formatting or a NumberFormatInfo object.\n" );
Console::WriteLine( new String( protoFmt ), S"String to convert",
S"Default/exception", S"Provider/exception" );
Console::WriteLine( new String( protoFmt ), S"-----------------",
S"-----------------", S"------------------" );
// Convert strings, with and without an IFormatProvider.
ConvertToUInt32( S"123456789", provider );
ConvertToUInt32( S"+123456789", provider );
ConvertToUInt32( S"pos 123456789", provider );
ConvertToUInt32( S"123456789.", provider );
ConvertToUInt32( S"123,456,789", provider );
ConvertToUInt32( S"4294967295", provider );
ConvertToUInt32( S"4294967296", provider );
ConvertToUInt32( S"-1", provider );
}
/*
This example of
Convert::ToUInt32( String* ) and
Convert::ToUInt32( String*, IFormatProvider* )
generates the following output. It converts several strings to unsigned
int values, using default formatting or a NumberFormatInfo object.
String to convert Default/exception Provider/exception
----------------- ----------------- ------------------
123456789 123456789 123456789
+123456789 123456789 FormatException
pos 123456789 FormatException 123456789
123456789. FormatException FormatException
123,456,789 FormatException FormatException
4294967295 4294967295 4294967295
4294967296 OverflowException OverflowException
-1 OverflowException FormatException
*/
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard
参照
Convert クラス | Convert メンバ | System 名前空間 | Convert.ToUInt32 オーバーロードの一覧