67 lines
1.9 KiB
Java
67 lines
1.9 KiB
Java
package com.viontv.app.utils;
|
|
|
|
import java.text.DecimalFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.Date;
|
|
import java.util.TimeZone;
|
|
|
|
public class TimeUtils {
|
|
|
|
public static String getCurrentTimeZone() {
|
|
return createGmtOffsetString(true, true, TimeZone.getDefault().getRawOffset());
|
|
}
|
|
|
|
public static String createGmtOffsetString(boolean includeGmt, boolean includeMinuteSeparatori, int offsetMillis) {
|
|
int offsetMinutes = offsetMillis / 60000;
|
|
char sign = '+';
|
|
if (offsetMinutes < 0) {
|
|
sign = '-';
|
|
offsetMinutes = -offsetMinutes;
|
|
}
|
|
|
|
StringBuilder builder = new StringBuilder(9);
|
|
if (includeGmt) {
|
|
builder.append("GMT");
|
|
}
|
|
builder.append(sign);
|
|
appendNumber(builder, 2, offsetMinutes / 60);
|
|
return builder.toString();
|
|
|
|
}
|
|
|
|
public static void appendNumber(StringBuilder builder, int count, int value) {
|
|
String string = Integer.toString(value);
|
|
int diff = count - string.length();
|
|
for (int i = 0; i < diff; i++) {
|
|
builder.append('0');
|
|
}
|
|
builder.append(string);
|
|
}
|
|
|
|
|
|
public static String transToString(Long time) {
|
|
Date date = new Date(time * 1000);
|
|
return new SimpleDateFormat("yyyy-MM-dd").format(date);
|
|
}
|
|
|
|
|
|
public static String formatNumber(int num) {
|
|
if (num >= 1000000) {
|
|
return formatDouble(num / 1000000, 1) + "m";
|
|
}
|
|
if (num >= 1000) {
|
|
return formatDouble(num / 1000, 1) + "k";
|
|
}
|
|
return String.valueOf(num);
|
|
}
|
|
|
|
private static String formatDouble(double value, int digits) {
|
|
StringBuilder pattern = new StringBuilder("#.");
|
|
for (int i = 0; i < digits; i++) {
|
|
pattern.append("#");
|
|
}
|
|
DecimalFormat df = new DecimalFormat(pattern.toString());
|
|
return df.format(value);
|
|
}
|
|
}
|