X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmir%2Fmisc%2FNumberUtils.java;fp=source%2Fmir%2Fmisc%2FNumberUtils.java;h=b3023c41c5b1d9b274b6b59d8c726add040c608e;hb=c9ac8fa71b679f8d967aac901bbef945c13b94c9;hp=1d8fb06f43c280978658cea3edadc2a9d65d0889;hpb=d63595f89aaa4b6a524dc0b4af9e0eef888f4c6b;p=mir.git diff --git a/source/mir/misc/NumberUtils.java b/source/mir/misc/NumberUtils.java index 1d8fb06f..b3023c41 100755 --- a/source/mir/misc/NumberUtils.java +++ b/source/mir/misc/NumberUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2001, 2002 The Mir-coders group + * Copyright (C) 2005 The Mir-coders group * * This file is part of Mir. * @@ -18,13 +18,10 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * In addition, as a special exception, The Mir-coders gives permission to link - * the code of this program with any library licensed under the Apache Software License, - * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library - * (or with modified versions of the above that use the same license as the above), - * and distribute linked combinations including the two. You must obey the - * GNU General Public License in all respects for all of the code used other than - * the above mentioned libraries. If you modify this file, you may extend this - * exception to your version of the file, but you are not obligated to do so. + * the code of this program with any library licensed under the Apache Software License. + * You must obey the GNU General Public License in all respects for all of the code used + * other than the above mentioned libraries. If you modify this file, you may extend this + * exception to your version of the file, but you are not obligated to do so. * If you do not wish to do so, delete this exception statement from your version. */ package mir.misc; @@ -34,12 +31,14 @@ import java.text.NumberFormat; /** * Help methods for number handling. * - * @version $Id: NumberUtils.java,v 1.5 2003/04/21 12:42:52 idfx Exp $ + * @version $Id: NumberUtils.java,v 1.6 2007/04/08 21:46:44 idfx Exp $ * @author mh, Mir-coders group * */ public final class NumberUtils { + private NumberUtils() { + } /* * Uses a suffix indicating multiples of 1024 (K), @@ -52,36 +51,33 @@ public final class NumberUtils { * @return A text representation of the number of bytes, * abbreviated for larger quantities. */ - public static String humanReadableSize(double bytes) - { + public static String humanReadableSize(double aBytes) { + double bytes = aBytes; String suffix; - - if( bytes >= 1024 * 1024 * 1024 ) - { - bytes /= (1024 * 1024 * 1024); + + if ( bytes >= (double) (1024 * 1024 * 1024) ) { + bytes /= (double) (1024 * 1024 * 1024); suffix = "G"; } - else if( bytes >= 1024 * 1024 ) - { - bytes /= (1024 * 1024); + else if( bytes >= (double) (1024 * 1024) ) { + bytes /= (double) (1024 * 1024); suffix = "M"; } - else if( bytes >= 1024 ) - { - bytes /= 1024; + else if( bytes >= 1024.0 ) { + bytes /= 1024.0; suffix = "K"; } - else - { + else { suffix = ""; } - int frac = (bytes >= 10 || bytes == 0) ? 0 : 1; + int frac = bytes > 9.5 || bytes < 0.05 ? 0 : 1; + NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(frac); nf.setMaximumFractionDigits(frac); nf.setGroupingUsed(false); + return nf.format(bytes) + suffix; } - }