指定した String 形式の数値を、それと等価な 32 ビット符号付き整数に変換します。
Overloads Public Shared Function ToInt32( _
ByVal value As String _) As Integer
[C#]
public static int ToInt32(stringvalue);
[C++]
public: static int ToInt32(String* value);
[JScript]
public static function ToInt32(
value : String) : int;
パラメータ
- value
変換する数値を格納している String 。
戻り値
value の値と等価な 32 ビット符号付き整数。
または
value が null 参照 (Visual Basic では Nothing) の場合は 0。
例外
例外の種類 | 条件 |
---|---|
FormatException | value の構成が、省略可能な符号と、それに続く 0 から 9 までの一連の数字ではありません。 |
OverflowException | value が MinValue 未満の数値か、 MaxValue より大きい数値を表しています。 |
解説
戻り値は、value に対して Int32.Parse メソッドを呼び出した結果得られる値です。
使用例
[Visual Basic, C#, C++] 既定の書式設定を使用し、 String 形式の Int32 (32 ビット整数) を ToInt32 メソッドで変換するコード例を次に示します。
' Example of the Convert.ToInt32( String ) and
' Convert.ToInt32( String, IFormatProvider ) methods.
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic
Module ToInt32ProviderDemo
Dim format As String = "{0,-20}{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 ConvertToInt32( numericStr As String, _
provider As IFormatProvider )
Dim defaultValue As Object
Dim providerValue As Object
' Convert numericStr to Int32 without a format provider.
Try
defaultValue = Convert.ToInt32( numericStr )
Catch ex As Exception
defaultValue = GetExceptionType( ex )
End Try
' Convert numericStr to Int32 with a format provider.
Try
providerValue = Convert.ToInt32( 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.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 Integer( ) { 3 }
provider.NumberNegativePattern = 0
Console.WriteLine( "This example of" & vbCrLf & _
" Convert.ToInt32( String ) and " & vbCrLf & _
" Convert.ToInt32( String, IFormatProvider ) " & _
vbCrLf & "generates the following output. It " & _
"converts several strings to " & 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.
ConvertToInt32( "123456789", provider )
ConvertToInt32( "+123456789", provider )
ConvertToInt32( "pos 123456789", provider )
ConvertToInt32( "-123456789", provider )
ConvertToInt32( "neg 123456789", provider )
ConvertToInt32( "123456789.", provider )
ConvertToInt32( "123,456,789", provider )
ConvertToInt32( "(123456789)", provider )
ConvertToInt32( "2147483648", provider )
ConvertToInt32( "-2147483649", provider )
End Sub
End Module
' This example of
' Convert.ToInt32( String ) and
' Convert.ToInt32( String, IFormatProvider )
' generates the following output. It converts several strings to
' 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 -123456789 FormatException
' neg 123456789 FormatException -123456789
' 123456789. FormatException FormatException
' 123,456,789 FormatException FormatException
' (123456789) FormatException FormatException
' 2147483648 OverflowException OverflowException
' -2147483649 OverflowException FormatException
[C#]
// Example of the Convert.ToInt32( string ) and
// Convert.ToInt32( string, IFormatProvider ) methods.
using System;
using System.Globalization;
class ToInt32ProviderDemo
{
static string format = "{0,-20}{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 ConvertToInt32( string numericStr,
IFormatProvider provider )
{
object defaultValue;
object providerValue;
// Convert numericStr to Int32 without a format provider.
try
{
defaultValue = Convert.ToInt32( numericStr );
}
catch( Exception ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to Int32 with a format provider.
try
{
providerValue = Convert.ToInt32( 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 };
provider.NumberNegativePattern = 0;
Console.WriteLine("This example of\n" +
" Convert.ToInt32( string ) and \n" +
" Convert.ToInt32( string, IFormatProvider ) " +
"\ngenerates the following output. It converts " +
"several strings to \nint 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.
ConvertToInt32( "123456789", provider );
ConvertToInt32( "+123456789", provider );
ConvertToInt32( "pos 123456789", provider );
ConvertToInt32( "-123456789", provider );
ConvertToInt32( "neg 123456789", provider );
ConvertToInt32( "123456789.", provider );
ConvertToInt32( "123,456,789", provider );
ConvertToInt32( "(123456789)", provider );
ConvertToInt32( "2147483648", provider );
ConvertToInt32( "-2147483649", provider );
}
}
/*
This example of
Convert.ToInt32( string ) and
Convert.ToInt32( string, IFormatProvider )
generates the following output. It converts several strings to
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 -123456789 FormatException
neg 123456789 FormatException -123456789
123456789. FormatException FormatException
123,456,789 FormatException FormatException
(123456789) FormatException FormatException
2147483648 OverflowException OverflowException
-2147483649 OverflowException FormatException
*/
[C++]
// Example of the Convert::ToInt32( String* ) and
// Convert::ToInt32( String*, IFormatProvider* ) methods.
#using <mscorlib.dll>
using namespace System;
using namespace System::Globalization;
const __wchar_t* protoFmt = L"{0,-20}{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 ConvertToInt32( String* numericStr, IFormatProvider* provider )
{
Object* defaultValue;
Object* providerValue;
// Convert numericStr to Int32 without a format provider.
try
{
defaultValue = __box( Convert::ToInt32( numericStr ) );
}
catch( Exception* ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to Int32 with a format provider.
try
{
providerValue = __box( Convert::ToInt32(
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;
provider->NumberNegativePattern = 0;
Console::WriteLine(S"This example of\n"
S" Convert::ToInt32( String* ) and \n"
S" Convert::ToInt32( String*, IFormatProvider* ) "
S"\ngenerates the following output. It converts "
S"several strings to \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.
ConvertToInt32( S"123456789", provider );
ConvertToInt32( S"+123456789", provider );
ConvertToInt32( S"pos 123456789", provider );
ConvertToInt32( S"-123456789", provider );
ConvertToInt32( S"neg 123456789", provider );
ConvertToInt32( S"123456789.", provider );
ConvertToInt32( S"123,456,789", provider );
ConvertToInt32( S"(123456789)", provider );
ConvertToInt32( S"2147483648", provider );
ConvertToInt32( S"-2147483649", provider );
}
/*
This example of
Convert::ToInt32( String* ) and
Convert::ToInt32( String*, IFormatProvider* )
generates the following output. It converts several strings to
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 -123456789 FormatException
neg 123456789 FormatException -123456789
123456789. FormatException FormatException
123,456,789 FormatException FormatException
(123456789) FormatException FormatException
2147483648 OverflowException OverflowException
-2147483649 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.ToInt32 オーバーロードの一覧