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ş:
Bayt içine Java Dize dönüştürmek için ...
Nasıl bir NameValueCollection içine bi...
Nasıl C bir tamsayı bir dize ayrıştırm...
Nasıl bir dize içine bir nesne seri ha...
nasıl Jackson JsonNode içine bir JSON ...