Click here to Skip to main content
15,910,797 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
Hey guys

I have a label.i am using it like U.S. phone number in {0:(###)-###-####}.

it's working fine but it removes leading zero from number.

for example:
like 0123456789 it returns 123456789
and other cases it working fine.

suppose number is 23456 then it format it right.

so main problem is it is reducing leading zero.

please help me
Posted
Updated 30-Jan-14 3:02am
v2
Comments
dharam1 30-Jan-14 9:32am    
Please post some code what you are trying.
Rahul_Pandit 30-Jan-14 9:35am    
lblHealthPhone.Text = String.Format("{0:(###)-###-####}", double.Parse(0002345578));
Richard MacCutchan 30-Jan-14 10:13am    
That makes no sense, why would you try to parse an integer into a double? Try
String.Format("{0:(000)-###-####}", 2345778);. Also see http://msdn.microsoft.com/en-us/library/0c899ak8(v=vs.110).aspx.
Rahul_Pandit 31-Jan-14 1:15am    
YOur code is not working.it is not creating phone number format like (011)-030-3450
Rahul_Pandit 31-Jan-14 1:21am    
it's not necessary to put zero at first always.

i want exact value what user have saved for phone number.like 002,0000002223,09876598465,9892384987
exact what user entered.My current format removes all leading zeros.

1 solution

I have solved it myself by creating this function

C#
public static string FormatPhone(string n)
       {
           string returnNumber = n;
           string areaCode = "";
           string usPrefix = "";
           string usNum = "";

           //Handle US Phones (10 digits) or else don't format
           if (!String.IsNullOrEmpty(n))
           {
               switch (n.Length)
               {
                   case 1:
                       areaCode = n.Substring(0, 1);
                       returnNumber = String.Format("({0})", areaCode);
                       break;
                   case 2:
                       areaCode = n.Substring(0, 2);
                       returnNumber = String.Format("({0})", areaCode);
                       break;
                   case 3:
                       areaCode = n.Substring(0, 3);
                       returnNumber = String.Format("({0})", areaCode);
                       break;
                   case 4:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 1);
                       returnNumber = String.Format("({0})-{1}", areaCode, usPrefix);
                       break;
                   case 5:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 2);
                       returnNumber = String.Format("({0})-{1}", areaCode, usPrefix);
                       break;
                   case 6:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       returnNumber = String.Format("({0})-{1}", areaCode, usPrefix);
                       break;
                   case 7:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       usNum = n.Substring(6, 1);
                       returnNumber = String.Format("({0})-{1}-{2}", areaCode, usPrefix, usNum);
                       break;
                   case 8:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       usNum = n.Substring(6, 2);
                       returnNumber = String.Format("({0})-{1}-{2}", areaCode, usPrefix, usNum);
                       break;
                   case 9:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       usNum = n.Substring(6, 3);
                       returnNumber = String.Format("({0})-{1}-{2}", areaCode, usPrefix, usNum);
                       break;
                   case 10:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       usNum = n.Substring(6, 4);
                       returnNumber = String.Format("({0})-{1}-{2}", areaCode, usPrefix, usNum);
                       break;
                   default:
                       areaCode = n.Substring(0, 3);
                       usPrefix = n.Substring(3, 3);
                       usNum = n.Substring(6, 4);
                       returnNumber = String.Format("({0})-{1}-{2}", areaCode, usPrefix, usNum);
                       break;

               }

           }
           return returnNumber;
       }
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900