Minggu, 03 Oktober 2010

Ternyata, Konversi String Menjadi Integer Tidak Mudah ;-)

Pertama, mari kita lihat dulu versi dalam program C# berikut ini:

using System;
using System.Globalization;

namespace CS_Konversi_Ke_Integer
{
class Program
{
static void Main(string[] args)
{
// definisi variable int
int angka = 1250;
// konversi menjadi string dengan
// format pemisah ribuan

string s = angka.ToString("#,##0");
Console.WriteLine(
"int diconvert menjadi string => {0}", s);
// tampilkan
// konversi kembali menjadi int
// angka = Convert.ToInt32(s);
// ternyata membangkitkan exception –
// Input String was not in a correct format

// supaya tidak exception, ganti dengan
// int.Parse –>
// jika yakin konversi akan selalu benar

// angka = int.Parse(s,
NumberStyles.AllowThousands,
CultureInfo.GetCultureInfo("en-US"));

// atau
// int.TryParse –>
// jika tidak yakin konversi akan selalu benar

if(!int.TryParse(s,
NumberStyles.AllowThousands,
CultureInfo.GetCultureInfo("en-US"),
out angka))
Console.WriteLine("Konversi Gagal ...");
// tampilkan
Console.WriteLine(
"string diconvert menjadi int => {0}", angka);
Console.ReadKey();
}
}
}


kedua, mari kita lihat versi VB.NET nya:



Imports System.Globalization

Module Module1
Sub Main()
' definisi variable integer
Dim angka As Integer = 1250
' konversi menjadi string dengan format pemisah ribuan
Dim s As String = angka.ToString("#,##0")
' tampilkan
Console.WriteLine( _
"int diconvert menjadi string => {0}", s)
' konversi kembali menjadi integer
' angka = Convert.ToInt32(s)
' membangkitkan exception -
' Input String was not in a correct format

' supaya tidak exception, ganti dengan
' Integer.Parse –>
' jika yakin konversi akan selalu benar

angka = Integer.Parse(s, _
NumberStyles.AllowThousands, _
CultureInfo.GetCultureInfo("en-US"))
' atau
' Integer.TryParse –>
' jika tidak yakin konversi akan selalu benar

If Not Integer.TryParse(s, _
NumberStyles.AllowThousands, _
CultureInfo.GetCultureInfo("en-US"), angka) Then
Console.WriteLine("Konversi Gagal ...")
End If
' tapi bisa disederhanakan dengan memanggil
' fungsi CInt seperti berikut ini:

angka = CInt(s)
' tampilkan
Console.WriteLine( _
"string diconvert menjadi int => {0}", angka)
Console.ReadKey()
End Sub
End Module


output dari program di atas adalah:



Konversi string to int


VB.NET memberikan kemudahan kepada programmer dalam mengerjakan coding tasknya ^^. tentunya anda tetap bisa menggunakan cara advanced seperti yang digunakan oleh C#.



Semoa Bermanfaat




Rgds


Adi




Tidak ada komentar: