הסבר על המרה ל INT‏

benny#C, NET.Leave a Comment

string str = "1,2,3";
            int x = Convert.ToInt32(str[0]);
            int y = Convert.ToInt32(str[2]);
            int z = Convert.ToInt32(str[4]);
 
 

x = 49 ולא 1. (זה בגלל שתו אחד של String הוא מסוג Char וכשממירים אותו ל Int מתקבל הערך האסקי שלו..

לעומת זאת כשאתה מוסיף לChar .ToString() הוא קודם ימיר את ה Char ל String ואז ל Int:

            string str = "1,2,3";
            int x = Convert.ToInt32(str[0].ToString());
            int y = Convert.ToInt32(str[2].ToString());
            int z = Convert.ToInt32(str[4].ToString());
 
 

x=1

אפשרות נוספת, להעביר למערך של String ואז להמיר:

               string str = "1,2,3";
            string[] arrStr = str.Split(',');
            int x = Convert.ToInt32(arrStr[0]);
            int y = Convert.ToInt32(arrStr[1]);
            int z = Convert.ToInt32(arrStr[2]);
 
 

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *