This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
I have a sample of code here (printing the hole program would not solve this problem I fear),where I have a println statement Sys....tln("depositing �100.00") instead of the British currency pound sign being printed I get a u with an colon above it,could some explain what is happening
I also would like to be able to display the output from the getBalance statements with 2 digits after the point ie;�100.00 and not �100.00023.Could someone advise me to the easiest way to do this.
an island in the sun <br />with a language of many tongue?
Joined: May 23, 2005
I should also state that I am still using sdk 1.4 which does not support the printf(string,double)output stream for formatting numbers
I guess your problem with the pound symbol (�) is that you're running the application in a command line box (cmd.exe) in Windows. The problem is that the command line uses a different character set (IBM-PC OEM) than Windows (usually ISO-Latin1 in Western countries). So what you type in a your text editor or IDE does not necessarily show up the same in the console window. This is a problem that shows up quite often when we print message strings in languages other then English.
I can think of three possible solutions:
1. Use an other operating system such as Linux or MacOS X. 2. Have your output go to graphical component (such as a Swing JFrame) instead of the standard output in a console window. 3. Try using the IBM-PC OEM character code for the pound symbol in your string: System.out.println("\u009C");
About printing a numerical quantity with a fixed number of decimal digits, you can use the java.text.DecimalFormat class:
Or, if you�re using Java 5.0, the new printf method comes in handy: