如何在.net中将long转换为int?

Sha*_*wal 17 c# casting

我正在开发silverlight中的window phone 7应用程序.我是窗口手机7应用程序的新手.我有String格式的long值如下

String Am = AmountTextBox.Text.ToString() 
Run Code Online (Sandbox Code Playgroud)

上面代码中的AmountTextBox.Text.ToString()是long值,它是字符串格式.我想在我的应用程序中存储15位数的值.

我找到了以下转换链接.

我可以将long转换为int吗?

我应该如何将字符串格式的long值转换为int?能否请您提供我可以解决上述问题的任何代码或链接?如果我做错了什么,请指导我.

Ian*_*Ian 28

使用Convert.ToInt32().如果值对于int来说太大,那么它将抛出OverflowException.

此方法可以采用整个范围的值,包括Int64和字符串.


slo*_*oth 15

您不能存储15位整数,因为整数的最大值是2,147,483,647.

long-Value有什么问题?

您可以使用TryParse()long从您的用户输入中获取-Value:

String Am = AmountTextBox.Text.ToString();
long l;
Int64.TryParse(Am, out l);
Run Code Online (Sandbox Code Playgroud)

false如果文本无法转换long,它将返回,因此使用起来非常安全.

否则,转换longint一个容易的

int i = (int)yourLongValue;
Run Code Online (Sandbox Code Playgroud)

如果您对丢弃MSB和使用LSB感到满意.