Click here to Skip to main content
15,886,873 members
Please Sign up or sign in to vote.
3.67/5 (3 votes)
See more:
in asp.net(c#) i want to convert the price written in digits i.e. the amount to an alphabetic style
for example 100 to one hundred dollar or to what ever currency

Any clear code or ideas??
Posted
Updated 1-Oct-12 1:36am
v2
Comments
Abhijit Parab 1-Oct-12 7:20am    
means you want amount in words?
Albarhami 1-Oct-12 7:34am    
Yeah that's true

hiii,

Define Object as

textBox1.text=100


AmountInWords obj=new AmountInWords();
textbox2.Text=obj.ConvertAmount(Convert.ToDouble(textBox1.Text))

And Output is= One Hundred

where class file is

AmountInWords.cs

C#
class AmountInWords
   {
       private static String[] units = { "Zero", "One", "Two", "Three",
           "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven",
           "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen",
           "Seventeen", "Eighteen", "Nineteen" };
       private static String[] tens = { "", "", "Twenty", "Thirty", "Forty",
           "Fifty", "Sixty", "Seventy", "Eighty", "Ninety" };


       public String ConvertAmount(double amount)
       {
           try
           {
               int amount_int = (int)amount;
               int amount_dec = (int)Math.Round((amount - (double)(amount_int)) * 100);
               return convert(amount_int) + "  point "
                       + convert(amount_dec);
           }
           catch (Exception e)
           {
               // TODO: handle exception
           }
           return "";
       }

       public String convert(int i)
       {
           //
           if (i < 20)
               return units[i];
           if (i < 100)
               return tens[i / 10] + ((i % 10 > 0) ? " " + convert(i % 10) : "");
           if (i < 1000)
               return units[i / 100] + " Hundred"
                       + ((i % 100 > 0) ? " and " + convert(i % 100) : "");
           if (i < 100000)
               return convert(i / 1000) + " Thousand "
                       + ((i % 1000 > 0) ? " " + convert(i % 1000) : "");
           if (i < 10000000)
               return convert(i / 100000) + " Lakh "
                       + ((i % 100000 > 0) ? " " + convert(i % 100000) : "");
           return convert(i / 10000000) + " Crore "
                   + ((i % 10000000 > 0) ? " " + convert(i % 10000000) : "");
       }

   }
 
Share this answer
 
Hi,
Try following link

Numbers to words in asp.net[^]
 
Share this answer
 
Hi,

Try this.
http://forums.asp.net/t/1367362.aspx/1[^]

-Milind
 
Share this answer
 
nothing is impossible. you can do it.
 
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