SORU
5 EYLÜL 2008, Cuma


Nasıl null bir int içine bir dize ayrıştırmak için

C null bir int içine bir dize ayrıştırmak için can atıyorum#. yani. String ya da int değer geri almak veya ayrıştırılmış olabilir mi null istiyorum.

Bu işe yarayacağını umuyordum

int? val = stringVal as int?;

Ama ben bunu bu şekilde şimdi bu uzatma yöntemi yazdım yani işe yaramaz

public static int? ParseNullableInt(this string value)
{
	if (value == null || value.Trim() == string.Empty)
	{
		return null;
	}
	else
	{
		try
		{
			return int.Parse(value);
		}
		catch
		{
			return null;
		}
	}
}

Bunu yapmanın daha iyi bir yolu var mı?

DÜZENLEME:TryParse önerileriniz için teşekkürler, biliyorum, ama yine de aynı işe yaradı. Eğer doğrudan null bir int içine ayrıştırmak olacak yerleşik bir çerçeve yöntemi varsa bilmek ilgileniyorum?

CEVAP
5 EYLÜL 2008, Cuma


Int32.TryParse muhtemelen biraz daha kolay

public static int? ToNullableInt32(this string s)
{
    int i;
    if (Int32.TryParse(s, out i)) return i;
    return null;
}

Edit@Glenn Int32.TryParse "çerçeve içine inşa edilmiştir". Ve Int32.Ayrıştırmakyol in dizeleri ayrıştırmak için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 8bitdigitaltv

    8bitdigitalt

    31 AĞUSTOS 2011
  • jkimisyellow

    jkimisyellow

    6 Mayıs 2009
  • Snazzy Labs

    Snazzy Labs

    9 Aralık 2008