Decimal.ToOACurrency メソッド
指定した Decimal 値を、64 ビット符号付き整数に格納されるそれと等価の OLE オートメーション通貨値に変換します。
Public Shared Function ToOACurrency( _
ByVal value As Decimal _) As Long
[C#]
public static long ToOACurrency(decimalvalue);
[C++]
public: static __int64 ToOACurrency(Decimalvalue);
[JScript]
public static function ToOACurrency(
value : Decimal) : long;
パラメータ
- value
Decimal 値。
戻り値
value と等価の OLE オートメーション値を格納する 64 ビット符号付き整数。
使用例
[Visual Basic, C#, C++] ToOACurrency メソッドを使用して Decimal の数値を Int64 フィールド内の等価の OLE オートメーション通貨値に変換するコード例を次に示します。
' Example of the Decimal.ToOACurrency method.
Imports System
Imports Microsoft.VisualBasic
Module DecimalToOACurrencyDemo
Const dataFmt As String = "{0,31}{1,27}"
' 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
' Display the Decimal.ToOACurrency parameter and the result
' or exception.
Sub ShowDecimalToOACurrency( Argument As Decimal )
' Catch the exception if ToOACurrency( ) throws one.
Try
Dim oaCurrency As Long = Decimal.ToOACurrency( Argument )
Console.WriteLine( dataFmt, Argument, _
oaCurrency )
Catch ex As Exception
Console.WriteLine( dataFmt, Argument, _
GetExceptionType( ex ) )
End Try
End Sub
Sub Main( )
Console.WriteLine( "This example of the " & _
"Decimal.ToOACurrency( ) method generates " & vbCrLf & _
"the following output. It displays the argument as " & _
"a Decimal " & vbCrLf & "and the OLE Automation " & _
"Currency value as a Long." & vbCrLf )
Console.WriteLine( dataFmt, "Argument", _
"OA Currency or Exception" )
Console.WriteLine( dataFmt, "--------", _
"------------------------" )
' Convert Decimal values to OLE Automation Currency values.
ShowDecimalToOACurrency( 0D )
ShowDecimalToOACurrency( 1D )
ShowDecimalToOACurrency( _
Decimal.Parse( "1.0000000000000000000000000000" ) )
ShowDecimalToOACurrency( 100000000000000D )
ShowDecimalToOACurrency( _
Decimal.Parse( "100000000000000.00000000000000" ) )
ShowDecimalToOACurrency( 10000000000000000000000000000D )
ShowDecimalToOACurrency( 0.000000000123456789D )
ShowDecimalToOACurrency( 0.123456789D )
ShowDecimalToOACurrency( 123456789D )
ShowDecimalToOACurrency( 123456789000000000D )
ShowDecimalToOACurrency( 4294967295D )
ShowDecimalToOACurrency( 18446744073709551615D )
ShowDecimalToOACurrency( -79.228162514264337593543950335D )
ShowDecimalToOACurrency( -79228162514264.337593543950335D )
End Sub
End Module
' This example of the Decimal.ToOACurrency( ) method generates
' the following output. It displays the argument as a Decimal
' and the OLE Automation Currency value as a Long.
'
' Argument OA Currency or Exception
' -------- ------------------------
' 0 0
' 1 10000
' 1.0000000000000000000000000000 10000
' 100000000000000 1000000000000000000
' 100000000000000.00000000000000 1000000000000000000
' 10000000000000000000000000000 OverflowException
' 0.000000000123456789 0
' 0.123456789 1235
' 123456789 1234567890000
' 123456789000000000 OverflowException
' 4294967295 42949672950000
' 18446744073709551615 OverflowException
' -79.228162514264337593543950335 -792282
' -79228162514264.337593543950335 -792281625142643376
[C#]
// Example of the decimal.ToOACurrency method.
using System;
class DecimalToOACurrencyDemo
{
const string dataFmt = "{0,31}{1,27}";
// Get the exception type name; remove the namespace prefix.
public static string GetExceptionType( Exception ex )
{
string exceptionType = ex.GetType( ).ToString( );
return exceptionType.Substring(
exceptionType.LastIndexOf( '.' ) + 1 );
}
// Display the decimal.ToOACurrency parameter and the result
// or exception.
public static void ShowDecimalToOACurrency( decimal Argument )
{
// Catch the exception if ToOACurrency( ) throws one.
try
{
long oaCurrency = decimal.ToOACurrency( Argument );
Console.WriteLine( dataFmt, Argument, oaCurrency );
}
catch( Exception ex )
{
Console.WriteLine( dataFmt, Argument,
GetExceptionType( ex ) );
}
}
public static void Main( )
{
Console.WriteLine( "This example of the " +
"decimal.ToOACurrency( ) method generates \nthe " +
"following output. It displays the argument as a " +
"decimal \nand the OLE Automation Currency value " +
"as a long.\n" );
Console.WriteLine( dataFmt, "Argument",
"OA Currency or Exception" );
Console.WriteLine( dataFmt, "--------",
"------------------------" );
// Convert decimal values to OLE Automation Currency values.
ShowDecimalToOACurrency( 0M );
ShowDecimalToOACurrency( 1M );
ShowDecimalToOACurrency( 1.0000000000000000000000000000M );
ShowDecimalToOACurrency( 100000000000000M );
ShowDecimalToOACurrency( 100000000000000.00000000000000M );
ShowDecimalToOACurrency( 10000000000000000000000000000M );
ShowDecimalToOACurrency( 0.000000000123456789M );
ShowDecimalToOACurrency( 0.123456789M );
ShowDecimalToOACurrency( 123456789M );
ShowDecimalToOACurrency( 123456789000000000M );
ShowDecimalToOACurrency( 4294967295M );
ShowDecimalToOACurrency( 18446744073709551615M );
ShowDecimalToOACurrency( -79.228162514264337593543950335M );
ShowDecimalToOACurrency( -79228162514264.337593543950335M );
}
}
/*
This example of the decimal.ToOACurrency( ) method generates
the following output. It displays the argument as a decimal
and the OLE Automation Currency value as a long.
Argument OA Currency or Exception
-------- ------------------------
0 0
1 10000
1.0000000000000000000000000000 10000
100000000000000 1000000000000000000
100000000000000.00000000000000 1000000000000000000
10000000000000000000000000000 OverflowException
0.000000000123456789 0
0.123456789 1235
123456789 1234567890000
123456789000000000 OverflowException
4294967295 42949672950000
18446744073709551615 OverflowException
-79.228162514264337593543950335 -792282
-79228162514264.337593543950335 -792281625142643376
*/
[C++]
// Example of the Decimal::ToOACurrency method.
#using <mscorlib.dll>
using namespace System;
const __wchar_t* dataFmt = L"{0,31}{1,27}";
// Get the exception type name; remove the namespace prefix.
String* GetExceptionType( Exception* ex )
{
String* exceptionType = ex->GetType( )->ToString( );
return exceptionType->Substring(
exceptionType->LastIndexOf( '.' ) + 1 );
}
// Display the Decimal::ToOACurrency parameter and the result
// or exception.
void ShowDecimalToOACurrency( Decimal Argument )
{
// Catch the exception if ToOACurrency( ) throws one.
try
{
__int64 oaCurrency = Decimal::ToOACurrency( Argument );
Console::WriteLine( dataFmt, __box( Argument ),
__box( oaCurrency ) );
}
catch( Exception* ex )
{
Console::WriteLine( dataFmt, __box( Argument ),
GetExceptionType( ex ) );
}
}
void main( )
{
Console::WriteLine( S"This example of the "
S"Decimal::ToOACurrency( ) method generates \nthe "
S"following output. It displays the argument as a "
S"Decimal \nand the OLE Automation Currency value "
S"as an __int64.\n" );
Console::WriteLine( dataFmt, S"Argument",
S"OA Currency or Exception" );
Console::WriteLine( dataFmt, S"--------",
S"------------------------" );
// Convert Decimal values to OLE Automation Currency values.
ShowDecimalToOACurrency( Decimal( 0 ) );
ShowDecimalToOACurrency( Decimal( 1 ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"1.0000000000000000000000000000" ) );
ShowDecimalToOACurrency( Decimal::Parse( S"100000000000000" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"100000000000000.00000000000000" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"10000000000000000000000000000" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"0.000000000123456789" ) );
ShowDecimalToOACurrency( Decimal::Parse( S"0.123456789" ) );
ShowDecimalToOACurrency( Decimal::Parse( S"123456789" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"123456789000000000" ) );
ShowDecimalToOACurrency( Decimal::Parse( S"4294967295" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"18446744073709551615" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"-79.228162514264337593543950335" ) );
ShowDecimalToOACurrency(
Decimal::Parse( S"-79228162514264.337593543950335" ) );
}
/*
This example of the Decimal::ToOACurrency( ) method generates
the following output. It displays the argument as a Decimal
and the OLE Automation Currency value as an __int64.
Argument OA Currency or Exception
-------- ------------------------
0 0
1 10000
1.0000000000000000000000000000 10000
100000000000000 1000000000000000000
100000000000000.00000000000000 1000000000000000000
10000000000000000000000000000 OverflowException
0.000000000123456789 0
0.123456789 1235
123456789 1234567890000
123456789000000000 OverflowException
4294967295 42949672950000
18446744073709551615 OverflowException
-79.228162514264337593543950335 -792282
-79228162514264.337593543950335 -792281625142643376
*/
[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 ファミリ