将类型字符串转换为int [英] convert type string to int

查看:126
本文介绍了将类型字符串转换为int的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨 我如何将nvarchar转换为asp.net中的int?
我将日期设置为文本框,但是我的sql中的日期类型为nvarchar
我的代码是;

 PersianCalendar p =  PersianCalendar();
      DateTime mdate = DateTime.Now;
       int  pyear = p.GetYear(mdate);
       int  pmonth = p.GetMonth(mdate);
       int  pday = p.GetDayOfMonth(mdate);
      字符串 pdate = 字符串 .Format("  {2}/{1}/{0}",pyear,pmonth,pday);
      TextBox2.Text = pdate;
//  .................. 
  SqlConnection con =  SqlConnection(" );
        con.Open();
    
        SqlCommand com =  SqlCommand(" ,骗子);
        com.Parameters.AddWithValue(" ,TextBox1.Text);
        com.Parameters.AddWithValue(" ,TextBox2.Text);
        com.Parameters.AddWithValue(" ,TextBox3.Text);
        com.Parameters.AddWithValue(" ,TextBox4.Text);
        com.Parameters.AddWithValue(" ,TextBox13.Text);
        com.Parameters.AddWithValue(" ,TextBox7.Text);
        
 
        Label3.Visible =  true ;
         int  id = Convert.ToInt32(com.ExecuteScalar());
         Label3 .Text = 字符串 .Format(" ,id);

       
        Label3.Text = " ;
        con.Close(); 

解决方案

都可以使用 ^ ]或 int.TryParse [ 字符串 s = " ; int i = int .Parse; ... int j; 如果( int .TryParse(s, out j)) { ... }



[edit]改进的示例-OriginalGriff [/edit]


第一件事,为什么这样:我的sql中的日期类型是nvarchar

其次,您可以尝试:
Convert.ToInt32将字符串转换为整数.您可以将转换失败作为溢出"或格式"异常处理.

例如:

  int  convertInteger = Convert.ToInt32(" );
// 如果someString为1234,则convertInteger = 1234 
// 如果someString为null,则convertInteger = 0  


参考:
MSDN:Convert.ToInt32方法(字符串) [ int pyear = p.GetYear(mdate); int pmonth = p.GetMonth(mdate); int pday = p.GetDayOfMonth(mdate); 字符串 pdate = 字符串 .Format(" {2}/{1}/{0}",pyear,pmonth,pday); // 现在,将该日期传递给该varchar字段的数据库.


hi how can i convert nvarchar to int in asp.net?
i set date to textbox but type of date in my sql is nvarchar
my code is;

PersianCalendar p = new PersianCalendar();
      DateTime mdate = DateTime.Now;
      int pyear = p.GetYear(mdate);
      int pmonth = p.GetMonth(mdate);
      int pday = p.GetDayOfMonth(mdate);
      string pdate = string.Format("{2}/{1}/{0}", pyear, pmonth, pday);
      TextBox2.Text = pdate;
//..................
  SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=NezamPezeshki;Integrated Security=True");
        con.Open();
    
        SqlCommand com = new SqlCommand("INSERT INTO shekayat(FileNum,shekayatDate, shakiName, shakiTell, patient, Description) VALUES ( @shd, @shn, @sht, @p, @des,@fn)", con);
        com.Parameters.AddWithValue("@shn", TextBox1.Text);
        com.Parameters.AddWithValue("@shd", TextBox2.Text);
        com.Parameters.AddWithValue("@p", TextBox3.Text);
        com.Parameters.AddWithValue("@sht", TextBox4.Text);
        com.Parameters.AddWithValue("@fn",TextBox13.Text);
        com.Parameters.AddWithValue("@des", TextBox7.Text);
        
 
        Label3.Visible = true;
        int id = Convert.ToInt32(com.ExecuteScalar());
         Label3 .Text  = String.Format("شماره کلاسه {0}", id);

       
        Label3.Text = "success";
        con.Close();

Either use int.Parse[^] or int.TryParse[^]:

string s = "1234";
int i = int.Parse(s);
...
int j;
if (int.TryParse(s, out j))
   {
   ...
   }



[edit]Improved example - OriginalGriff[/edit]


First thing, why so: type of date in my sql is nvarchar

Second, you can try:
Convert.ToInt32 to convert a string into interger. You can handle the conversion failure as Overflow or Format exception.

Ex:

int convertedInteger = Convert.ToInt32("someString");
// if someString was 1234, convertedInteger = 1234
// if someString was null, convertedInteger = 0


Refer: MSDN: Convert.ToInt32 Method (String)[^]

UPDATE:
my field in sql is nvarchar and i want send date like 12/02/2012 to related field in sql

Your code already have most of it. To have a defined date format sent as a string to a Varchar field:

int pyear = p.GetYear(mdate);
int pmonth = p.GetMonth(mdate);
int pday = p.GetDayOfMonth(mdate);
string pdate = string.Format("{2}/{1}/{0}", pyear, pmonth, pday);
// Now pass this pdate to database for that varchar field. 


这篇关于将类型字符串转换为int的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆