忍者ブログ

VB.NET-TIPS などプログラミングについて

VB.NETのTIPS(小技集)を中心に、Javascript、PHP その他のプログラミングについて少し役に立つ情報を発信します。いわゆる個人的な忘備録ですが、みなさんのお役に立てれば幸いです。

VB.NET:オブジェクト型(Object)から各数値データ型(Integer,Long,Decimal,Double)変換について
花粉予報が気になる時期になってきました。「花粉」という言葉に春を感じますが、みなさんは如何でしょうか。

春と言えばフレッシュな社会人や学生さんを連想しますが、VB.NETを始めたころも春だった様な...

そこでこのブログのVB.NET関連の記事ですが、データ変換などと基本的なものを取り上げました。 オブジェクト型から各種のデータ型への変換関数を以下のソースに示します。 オブジェクト型から変換する場合、いろいろな方法がありますが、 各データ型への変換メソッド「Parse」を使うのが一番簡単です。 この「Parse」ですが、変換に失敗を Try ... Catch で捉えられるのでエラー発生時にデフォルト値を返します。

これらの関数を利用する場面ですが、 データベースからの数値データを取得する場合にNULLデータを0に変換したい時によく使っています。

''' --------------------------------------------------------
''' <summary>Object型からInteger型変換</summary>
''' <param name="obj">変換元Object型データ</param>
''' <returns>変換後Integer型データ(変換不可の場合は0)</returns>
''' --------------------------------------------------------
Public Function ObjectToInt(ByVal obj As Object) As Integer
    Try
        Return Integer.Parse(obj)
    Catch ex As Exception
        Return 0
    End Try
End Function

''' --------------------------------------------------------
''' <summary>Object型からDecimal型変換</summary>
''' <param name="obj">変換元Object型データ</param>
''' <returns>変換後Decimal型データ(変換不可の場合は0)</returns>
''' --------------------------------------------------------
Public Function ObjectToDec(ByVal obj As Object) As Decimal
    Try
        Return Decimal.Parse(obj)
    Catch ex As Exception
        Return 0
    End Try
End Function

''' --------------------------------------------------------
''' <summary>Object型からLong型変換</summary>
''' <param name="obj">変換元Object型データ</param>
''' <returns>変換後Long型データ(変換不可の場合は0)</returns>
''' --------------------------------------------------------
Public Function ObjectToLng(ByVal obj As Object) As Long
    Try
        Return Decimal.Parse(obj)
    Catch ex As Exception
        Return 0
    End Try
End Function

''' --------------------------------------------------------
''' <summary>Object型からDouble型変換</summary>
''' <param name="obj">変換元Object型データ</param>
''' <returns>変換後Double型データ(変換不可の場合は0)</returns>
''' --------------------------------------------------------
Public Function ObjectToDbl(ByVal obj As Object) As Double
    Try
        Return Decimal.Parse(obj)
    Catch ex As Exception
        Return 0.0
    End Try
End Function

''' --------------------------------------------------------
''' <summary>Object型からString型変換</summary>
''' <param name="obj">変換元Object型データ</param>
''' <returns>変換後String型データ(変換不可の場合は"")</returns>
''' --------------------------------------------------------
Public Function ObjToStr(ByVal obj As Object) As String
    Try
        Return obj.ToString
    Catch ex As Exception
        Return ""
    End Try
End Function

このソースは単に「Public Function」と宣言していますので、 静的なModuleかSharedなクラスで宣言してどこからでも参照出来る様にすればいいと思います。


=====
2016/03/14:の時の情報











PR

コメント

コメントを書く