1 /* ownCloud Android client application
2 * Copyright (C) 2011 Bartek Przybylski
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 package eu
.alefzero
.owncloud
;
21 import java
.util
.HashMap
;
24 * A helper class for some string operations.
26 * @author Bartek Przybylski
29 public class DisplayUtils
{
30 public static String
bitsToHumanReadable(long bitsLen
) {
31 double result
= bitsLen
;
33 while (result
> 1024 && attachedsuff
< suffixes
.length
) {
37 result
= ((int) (result
* 100)) / 100.;
38 return result
+ suffixes
[attachedsuff
];
41 public static String
HtmlDecode(String s
) {
43 for (int i
= 0; i
< s
.length(); ++i
) {
44 if (s
.charAt(i
) == '%') {
45 ret
+= (char) Integer
.parseInt(s
.substring(i
+ 1, i
+ 3), 16);
54 public static String
convertMIMEtoPrettyPrint(String mimetype
) {
55 if (mimeType2HUmanReadable
.containsKey(mimetype
)) {
56 return mimeType2HUmanReadable
.get(mimetype
);
58 return mimetype
.split("/")[1].toUpperCase() + " file";
61 private static final String
[] suffixes
= { "B", "KB", "MB", "GB", "TB",
62 "PB", "EB", "ZB", "YB" };
64 private static HashMap
<String
, String
> mimeType2HUmanReadable
;
66 mimeType2HUmanReadable
= new HashMap
<String
, String
>();
68 mimeType2HUmanReadable
.put("image/jpeg", "JPEG image");
69 mimeType2HUmanReadable
.put("image/jpg", "JPEG image");
70 mimeType2HUmanReadable
.put("image/png", "PNG image");
71 mimeType2HUmanReadable
.put("image/bmp", "Bitmap image");
72 mimeType2HUmanReadable
.put("image/gif", "GIF image");
73 mimeType2HUmanReadable
.put("image/svg+xml", "JPEG image");
74 mimeType2HUmanReadable
.put("image/tiff", "TIFF image");
76 mimeType2HUmanReadable
.put("audio/mpeg", "MP3 music file");
77 mimeType2HUmanReadable
.put("application/ogg", "OGG music file");