⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timeformatter.java

📁 java 文件下载器。可自定义
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   TimeFormatter.java

package org.gudy.azureus2.core3.util;

import java.io.PrintStream;
import java.text.SimpleDateFormat;
import java.util.*;

// Referenced classes of package org.gudy.azureus2.core3.util:
//			Debug, SystemTime

public class TimeFormatter
{

	static final String TIME_SUFFIXES[] = {
		"s", "m", "h", "d", "y"
	};
	public static final String DATEFORMATS_DESC[] = {
		"EEEE, MMMM d, yyyy GG", "EEEE, MMMM d, yyyy", "EEE, MMMM d, yyyy", "MMMM d, ''yy", "EEE, MMM d, ''yy", "MMM d, yyyy", "MMM d, ''yy", "yyyy/MM/dd", "''yy/MM/dd", "MMM dd", 
		"MM/dd"
	};
	private static final SimpleDateFormat http_date_format;

	public TimeFormatter()
	{
	}

	public static String format(long time_secs)
	{
		if (time_secs == 0x1e13380L || time_secs >= 0x6cebb800L)
			return "∞";
		if (time_secs < 0L)
			return "";
		int vals[] = {
			(int)time_secs % 60, (int)(time_secs / 60L) % 60, (int)(time_secs / 3600L) % 24, (int)(time_secs / 0x15180L) % 365, (int)(time_secs / 0x1e13380L)
		};
		int end;
		for (end = vals.length - 1; vals[end] == 0 && end > 0; end--);
		String result = (new StringBuilder()).append(vals[end]).append(TIME_SUFFIXES[end]).toString();
		while (--end >= 0 && vals[end] == 0) ;
		if (end >= 0)
			result = (new StringBuilder()).append(result).append(" ").append(twoDigits(vals[end])).append(TIME_SUFFIXES[end]).toString();
		return result;
	}

	public static String format100ths(long time_millis)
	{
		long time_secs = time_millis / 1000L;
		int hundredths = (int)(time_millis - time_secs * 1000L) / 10;
		if (time_millis == 0L || time_secs >= 60L)
			return format(time_secs);
		else
			return (new StringBuilder()).append(time_secs).append(".").append(twoDigits(hundredths)).append(TIME_SUFFIXES[0]).toString();
	}

	public static String formatColon(long time)
	{
		if (time == 0x1e13380L || time >= 0x6cebb800L)
			return "∞";
		if (time < 0L)
			return "";
		int secs = (int)time % 60;
		int mins = (int)(time / 60L) % 60;
		int hours = (int)(time / 3600L) % 24;
		int days = (int)(time / 0x15180L) % 365;
		int years = (int)(time / 0x1e13380L);
		String result = "";
		if (years > 0)
			result = (new StringBuilder()).append(result).append(years).append("y ").toString();
		if (years > 0 || days > 0)
			result = (new StringBuilder()).append(result).append(days).append("d ").toString();
		result = (new StringBuilder()).append(result).append(twoDigits(hours)).append(":").append(twoDigits(mins)).append(":").append(twoDigits(secs)).toString();
		return result;
	}

	private static String twoDigits(int i)
	{
		return i >= 10 ? String.valueOf(i) : (new StringBuilder()).append("0").append(i).toString();
	}

	public static int parseColon(String str)
	{
		int multipliers[] = {
			1, 60, 3600, 0x15180, 0x1e13380
		};
		String bits[] = str.split(":");
		int result = 0;
		for (int i = 0; i < bits.length; i++)
		{
			String bit = bits[bits.length - (i + 1)].trim();
			if (bit.length() > 0)
				result += multipliers[i] * Integer.parseInt(bit);
		}

		return result;
	}

	public static String formatNanoAsMilli(long nanos)
	{
		long truncator = 0xdf8475800L;
		nanos -= (nanos / 0xdf8475800L) * 0xdf8475800L;
		return (new StringBuilder()).append(String.valueOf((double)nanos / 1000000D)).append(" ms").toString();
	}

	public static String getHTTPDate(long millis)
	{
		SimpleDateFormat simpledateformat = http_date_format;
		JVM INSTR monitorenter ;
		return http_date_format.format(new Date(millis));
		Exception exception;
		exception;
		throw exception;
	}

	public static long parseHTTPDate(String date)
	{
		return http_date_format.parse(date).getTime();
		Throwable e;
		e;
		Debug.out((new StringBuilder()).append("Failed to parse HTTP date '").append(date).append("'").toString());
		return 0L;
	}

	public static String milliStamp()
	{
		long nanos = SystemTime.getHighPrecisionCounter();
		long truncator = 0xdf8475800L;
		nanos -= (nanos / 0xdf8475800L) * 0xdf8475800L;
		String str;
		for (str = String.valueOf(nanos / 0xf4240L); str.length() < 5; str = (new StringBuilder()).append("0").append(str).toString());
		return (new StringBuilder()).append(str).append(": ").toString();
	}

	public static void milliTrace(String str)
	{
		System.out.println((new StringBuilder()).append(milliStamp()).append(str).toString());
	}

	static 
	{
		http_date_format = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
		http_date_format.setTimeZone(TimeZone.getTimeZone("GMT"));
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -