Skip to main content

java numbers to Text Statement

package ms.utils;

import java.text.DecimalFormat;

public class EnglishDecimalFormat {

private static final String[] majorNames = {
   "",
   " Thousand",
   " Million",
   " Billion",
   " Trillion",
   " Quadrillion",
   " Quintillion"
   };

 private static final String[] tensNames = {
   "",
   " Ten",
   " Twenty",
   " Thirty",
   " Fourty",
   " Fifty",
   " Sixty",
   " Seventy",
   " Eighty",
   " Ninety"
   };

 private static final String[] numNames = {
   "",
   " One",
   " Two",
   " Three",
   " Four",
   " Five",
   " Six",
   " Seven",
   " Eight",
   " Nine",
   " Ten",
   " Eleven",
   " Twelve",
   " Thirteen",
   " Fourteen",
   " Fifteen",
   " Sixteen",
   " Seventeen",
   " Eighteen",
   " Nineteen"
   };

private static String convertLessThanOneThousand(int number) {
   String soFar;

   if (number % 100 < 20){
       soFar = numNames[number % 100];
       number /= 100;
      }
   else {
       soFar = numNames[number % 10];
       number /= 10;

       soFar = tensNames[number % 10] + soFar;
       number /= 10;
      }
   if (number == 0) return soFar;
   return numNames[number] + " Hundred" + soFar;
}

public  static String convert(int number) {
   /* special case */
   if (number == 0) { return "zero"; }

   String prefix = "";

   if (number < 0) {
       number = -number;
       prefix = "negative";
     }

   String soFar = "";
   int place = 0;

   do {
     int n = number % 1000;
     if (n != 0){
        String s = convertLessThanOneThousand(n);
        soFar = s + majorNames[place] + soFar;
       }
     place++;
     number /= 1000;
     } while (number > 0);

   return (prefix + soFar).trim();
}
public static String convert(double d){
   String numStr=null;
 int left=  (int)Math.floor(d);
 numStr=convert(left)+" Dinar";
 int right=(int)Math.round(1000*(d-Math.floor(d)));
 numStr =numStr+" and "+convert(right)+" Fils";
   return numStr;
}

  static public String customFormat(String pattern, double value ) {
     DecimalFormat myFormatter = new DecimalFormat(pattern);
     String output = myFormatter.format(value);
    return  output;
  }

}

Comments

Popular posts from this blog

Installing liferay 6.2 on wildfly 10 app server and oracle 11g database & windows machine

*************************************DATABASE CREATION*********************************************************************************************** DOWNLOAD LIFERAY PORTAL SCRIPTS FROM https://www.liferay.com/downloads/liferay-portal/available-releases Rename the file as liferay.sql put it let say in under c drive , so it will be located like this  c:\liferay.sql from cmd dir c:\ SQLPLUS / AS SYSDBA @liferay.sql lportal lportal it will create the db ..after finishing go to sqlplus again to ggrant the below  to lportal user SQLPLUS / AS SYSDBA grant create session to lportal; grant connect to lportal; grant resource to lportal; *******************************CONFIGURE WILDFLY TO CONNECT TO ORACLE DB *****************************************************************************************************  configure wildfly to connect to oracle db Download the driver: ojdbc[VERSION].jar Create subfolders [WILDFLY_HOME]/modules/system/layers/base/com/o...

itext 2.7.1 writing Arabic and English content in a PDF file

   public void createPdf(String filename) throws IOException, DocumentException {               Document document = new Document();           PdfWriter.getInstance(document, new FileOutputStream(filename));             document.open();             document.add(Chunk.NEWLINE);        FontFactory.register("c:/windows/fonts/tradbdo.ttf", "my_arabic");               Font myArabicFont = FontFactory.getFont("my_arabic" ,BaseFont.IDENTITY_H, BaseFont.EMBEDDED);         PdfPTable table = new PdfPTable(1);         table.getDefaultCell().setNoWrap(false);        // table.setRunDirection(PdfWriter.RUN_DIRECTION_RTL);         PdfPCell text = new PdfPCell(new Phrase("محمود السنباطيthis is أبتثجحخدرزسشصضطظعغفقكلمنهوى", myAr...

Liferay Migration form 5.2.3 to 6.2

Liferay Migration form 5.2.3 to 6.2 Liferay Migration from 5.2.3. to 6.2 Step 1. Migration to 6.0.6 1. Create 5.2.3 DB dump (db.sql). 2. Create database for LR 6.0.6 (db606). 3. Load 5.2.3 dump into 6.0.6 database: mysql -uroot -p1 db606 < db.sql; Delete all database views (if any). 4. Unzip clean Liferay 6.0.6. 5. Delete all folders from ' webapps ' (except ' ROOT ' and ' tunnel-web '); delete jre from tomcat folder. 6. Copy 'data' folder from Liferay 5.2.3 to Liferay 6.0.6. 7. Startup Liferay 6.0.6 (with default Hypersonic database settings). 8. Shutdown Liferay 6.0.6. 9. Create  portal-ext.properties  file: jdbc.default.driverClassName=com.mysql.jdbc.Driver jdbc.default.url=jdbc:mysql://localhost:3306/db606?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false jdbc.default.username=root jdbc.default.password=1 permissions.user.check.algorithm=5 image.hook.impl=com....