数値の特定の String 形式を等価の 16 ビット符号付き整数に変換します。
Overloads Public Shared Function ToInt16( _
ByVal value As String _) As Short
[C#]
public static short ToInt16(stringvalue);
[C++]
public: static short ToInt16(String* value);
[JScript]
public static function ToInt16(
value : String) : Int16;
パラメータ
- value
変換する数値を格納している String 。
戻り値
value の値と等価な 16 ビット符号付き整数。
または
value が null 参照 (Visual Basic では Nothing) の場合は 0。
例外
例外の種類 | 条件 |
---|---|
FormatException | value の構成が、省略可能な符号と、それに続く 0 から 9 までの一連の数字ではありません。 |
OverflowException | value が MinValue 未満の数値か、 MaxValue より大きい数値を表しています。 |
使用例
[Visual Basic, C#, C++] 既定の書式設定を使用し、 String 形式の Int16 (16 ビット整数) を ToInt16 メソッドで変換するコード例を次に示します。
' Example of the Convert.ToInt16( String ) and
' Convert.ToInt16( String, IFormatProvider ) methods.
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic
Module ToInt16ProviderDemo
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 ConvertToInt16( numericStr As String, _
provider As IFormatProvider )
Dim defaultValue As Object
Dim providerValue As Object
' Convert numericStr to Int16 without a format provider.
Try
defaultValue = Convert.ToInt16( numericStr )
Catch ex As Exception
defaultValue = GetExceptionType( ex )
End Try
' Convert numericStr to Int16 with a format provider.
Try
providerValue = Convert.ToInt16( 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.ToInt16( String ) and " & vbCrLf & _
" Convert.ToInt16( String, IFormatProvider ) " & _
vbCrLf & "generates the following output. It " & _
"converts several strings to " & vbCrLf & "Short " & _
"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.
ConvertToInt16( "12345", provider )
ConvertToInt16( "+12345", provider )
ConvertToInt16( "pos 12345", provider )
ConvertToInt16( "-12345", provider )
ConvertToInt16( "neg 12345", provider )
ConvertToInt16( "12345.", provider )
ConvertToInt16( "12,345", provider )
ConvertToInt16( "(12345)", provider )
ConvertToInt16( "32768", provider )
ConvertToInt16( "-32769", provider )
End Sub
End Module
' This example of
' Convert.ToInt16( String ) and
' Convert.ToInt16( String, IFormatProvider )
' generates the following output. It converts several strings to
' Short values, using default formatting or a NumberFormatInfo object.
'
' String to convert Default/exception Provider/exception
' ----------------- ----------------- ------------------
' 12345 12345 12345
' +12345 12345 FormatException
' pos 12345 FormatException 12345
' -12345 -12345 FormatException
' neg 12345 FormatException -12345
' 12345. FormatException FormatException
' 12,345 FormatException FormatException
' (12345) FormatException FormatException
' 32768 OverflowException OverflowException
' -32769 OverflowException FormatException
[C#]
// Example of the Convert.ToInt16( string ) and
// Convert.ToInt16( string, IFormatProvider ) methods.
using System;
using System.Globalization;
class ToInt16ProviderDemo
{
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 ConvertToInt16( string numericStr,
IFormatProvider provider )
{
object defaultValue;
object providerValue;
// Convert numericStr to Int16 without a format provider.
try
{
defaultValue = Convert.ToInt16( numericStr );
}
catch( Exception ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to Int16 with a format provider.
try
{
providerValue = Convert.ToInt16( 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.ToInt16( string ) and \n" +
" Convert.ToInt16( string, IFormatProvider ) " +
"\ngenerates the following output. It converts " +
"several strings to \nshort 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.
ConvertToInt16( "12345", provider );
ConvertToInt16( "+12345", provider );
ConvertToInt16( "pos 12345", provider );
ConvertToInt16( "-12345", provider );
ConvertToInt16( "neg 12345", provider );
ConvertToInt16( "12345.", provider );
ConvertToInt16( "12,345", provider );
ConvertToInt16( "(12345)", provider );
ConvertToInt16( "32768", provider );
ConvertToInt16( "-32769", provider );
}
}
/*
This example of
Convert.ToInt16( string ) and
Convert.ToInt16( string, IFormatProvider )
generates the following output. It converts several strings to
short values, using default formatting or a NumberFormatInfo object.
String to convert Default/exception Provider/exception
----------------- ----------------- ------------------
12345 12345 12345
+12345 12345 FormatException
pos 12345 FormatException 12345
-12345 -12345 FormatException
neg 12345 FormatException -12345
12345. FormatException FormatException
12,345 FormatException FormatException
(12345) FormatException FormatException
32768 OverflowException OverflowException
-32769 OverflowException FormatException
*/
[C++]
// Example of the Convert::ToInt16( String* ) and
// Convert::ToInt16( 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 ConvertToInt16( String* numericStr, IFormatProvider* provider )
{
Object* defaultValue;
Object* providerValue;
// Convert numericStr to Int16 without a format provider.
try
{
defaultValue = __box( Convert::ToInt16( numericStr ) );
}
catch( Exception* ex )
{
defaultValue = GetExceptionType( ex );
}
// Convert numericStr to Int16 with a format provider.
try
{
providerValue = __box( Convert::ToInt16(
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::ToInt16( String* ) and \n"
S" Convert::ToInt16( String*, IFormatProvider* ) "
S"\ngenerates the following output. It converts "
S"several strings to \nshort 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.
ConvertToInt16( S"12345", provider );
ConvertToInt16( S"+12345", provider );
ConvertToInt16( S"pos 12345", provider );
ConvertToInt16( S"-12345", provider );
ConvertToInt16( S"neg 12345", provider );
ConvertToInt16( S"12345.", provider );
ConvertToInt16( S"12,345", provider );
ConvertToInt16( S"(12345)", provider );
ConvertToInt16( S"32768", provider );
ConvertToInt16( S"-32769", provider );
}
/*
This example of
Convert::ToInt16( String* ) and
Convert::ToInt16( String*, IFormatProvider* )
generates the following output. It converts several strings to
short values, using default formatting or a NumberFormatInfo object.
String to convert Default/exception Provider/exception
----------------- ----------------- ------------------
12345 12345 12345
+12345 12345 FormatException
pos 12345 FormatException 12345
-12345 -12345 FormatException
neg 12345 FormatException -12345
12345. FormatException FormatException
12,345 FormatException FormatException
(12345) FormatException FormatException
32768 OverflowException OverflowException
-32769 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.ToInt16 オーバーロードの一覧 | Int16.Parse