📄 resource.java
字号:
/* * @(#)Resource.java 1.10 02/09/03 @(#) * * Copyright (c) 2000-2002 Sun Microsystems, Inc. All rights reserved. * PROPRIETARY/CONFIDENTIAL * Use is subject to license terms. */package a.a.a.b;import java.util.Hashtable;abstract public class Resource { abstract protected Object[][] getContents(); /** handle for the key value lookup table. */ private Hashtable lookup = null; /** * load the lookup table. */ abstract protected boolean isLocalizedAMPMafterTime(); static Resource res = new Resource_Chs(); public static String getString(String key) { String lStr = null; if (res != null) { if (res.lookup == null) { res.loadLookup(); } lStr = (String) res.lookup.get(key); } return (lStr != null) ? lStr : key; } public static String getString(String key, String[] values) { boolean tokenMarkerFound = false; StringBuffer output; char currentChar; int length; String str = getString(key); if (str == null) { return null; } length = str.length(); output = new StringBuffer(length * 2); // try to avoid resizing for (int i = 0; i < length; i++) { currentChar = str.charAt(i); if (tokenMarkerFound) { if (currentChar < '1' || currentChar > '9') { // covers the "%%" case output.append(currentChar); } else { // substitute a value, "1" is index 0 into the value array output.append(values[currentChar - '1']); } tokenMarkerFound = false; } else if (currentChar == '%') { tokenMarkerFound = true; } else { output.append(currentChar); } } return output.toString(); } private void loadLookup() { if (lookup != null) return; Object[][] contents = getContents(); Hashtable tmp = new Hashtable(contents.length); for (int i = 0; i < contents.length; ++i) { tmp.put(contents[i][0], contents[i][1]); } lookup = tmp; } public static String getDateString(String dayOfWeek, String date, String month, String year) { String lStr = null; if (res != null) { if (res.lookup == null) { res.loadLookup(); } lStr = res.getLocalizedDateString(dayOfWeek, date, month, year); } return (lStr != null) ? lStr : (dayOfWeek + ", " + date + " " + month + " " + year); } abstract protected String getLocalizedDateString(String dayOfWeek, String date, String month, String year); public static String getTimeString(String hour, String min, String sec, String ampm) { String lStr = null; if (res != null) { if (res.lookup == null) { res.loadLookup(); } lStr = res.getLocalizedTimeString(hour, min, sec, ampm); } return (lStr != null) ? lStr : (hour + ":" + min + ":" + sec + ((ampm == null) ? "" : (" " + ampm))); } abstract protected String getLocalizedTimeString(String hour, String min, String sec, String ampm); public static String getDateTimeString(String dayOfWeek, String date, String month, String year, String hour, String min, String sec, String ampm) { String lStr = null; if (res != null) { if (res.lookup == null) { res.loadLookup(); } lStr = res.getLocalizedDateTimeString(dayOfWeek, date, month, year, hour, min, sec, ampm); } return (lStr != null) ? lStr : (dayOfWeek + ", " + date + " " + month + " " + year + " " + hour + ":" + min + ":" + sec + ((ampm == null) ? "" : (" " + ampm))); } abstract protected String getLocalizedDateTimeString(String dayOfWeek, String date, String month, String year, String hour, String min, String sec, String ampm); public static int getFirstDayOfWeek() { if (res == null) { return java.util.Calendar.SUNDAY; } return res.getLocalizedFirstDayOfWeek(); } abstract protected int getLocalizedFirstDayOfWeek(); public static boolean isAMPMafterTime() { if (res == null) { return true; } return res.isLocalizedAMPMafterTime(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -