Formatting Messages: Arabic Digit
import java.awt.event.*;
import java.awt.*;
import java.text.*;
import javax.swing.*;
public class ArabicDigits extends JPanel {
static JFrame frame;
public ArabicDigits() {
NumberFormat nf = NumberFormat.getInstance();
if (nf instanceof DecimalFormat) {
DecimalFormat df = (DecimalFormat)nf;
DecimalFormatSymbols dfs = df.getDecimalFormatSymbols();
// set the beginning of the range to Arabic digits
dfs.setZeroDigit('\u0660');
df.setDecimalFormatSymbols(dfs);
}
// create a label with the formatted number
JLabel label = new JLabel(nf.format(1234567.89));
// set the font with a large enough size so we can easily
// read the numbers
label.setFont(new Font("Lucida Sans", Font.PLAIN, 22));
add(label);
}
public static void main(String [] argv) {
ArabicDigits panel = new ArabicDigits();
frame = new JFrame("Arabic Digits");
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}});
frame.getContentPane().add("Center", panel);
frame.pack();
frame.setVisible(true);
}
}
Related examples in the same category