/** * Writes a formatted string to the output destination of the {@code Formatter}. * * @param format * a format string. * @param args * the arguments list used in the {@code format()} method. If there are * more arguments than those specified by the format string, then * the additional arguments are ignored. * @return this {@code Formatter}. * @throws IllegalFormatFlagsException * if the format string is illegal or incompatible with the * arguments, or if fewer arguments are sent than those required by * the format string, or any other illegal situation. */ public static String format(String format, Object... args) { SimpleFormat f = new SimpleFormat(); f.doFormat(format, args); return f.out.toString(); }
private CharSequence transformFromDateTime() { if (arg == null) { return transformFromNull(); } // Ignore calendar... // this is a total hack... as we don't care... Date date = null; { if (arg instanceof Long) { date = new Date(((Long) arg).longValue()); } else if (arg instanceof Date) { date = (Date) arg; } else { throw badArgumentType(); } } StringBuilder result = new StringBuilder(); result.append(date); return padding(result, 0); }
@Override public String toString() { return SimpleFormat.format("<%s - %s>", start, end); } }
private CharSequence transformFromFloat() { if (arg == null) { return transformFromNull(); throw badArgumentType(); CharSequence specialNumberResult = transformFromSpecialNumber(); if (specialNumberResult != null) { return specialNumberResult; case 'a': case 'A': transformA(); break; case 'e': case 'E': transformE(result); break; case 'f': transformF(result); break; case 'g': case 'G': transformG(result); break; default: if ('-' == result.charAt(0)) { if (formatToken.flagParenthesis) { return wrapParentheses(result);
outputCharSequence(format, plainTextStart, plainTextEnd); int index = token.getArgIndex() == FormatToken.UNSET ? currentObjectIndex++ : token.getArgIndex(); argument = getArgument(args, index, fsp, lastArgument, hasLastArgumentSet); lastArgument = argument; hasLastArgumentSet = true; CharSequence substitution = transform(token, argument); outputCharSequence(substitution, 0, substitution.length());
value = ((Byte) arg).longValue(); } else { throw badArgumentType(); return wrapParentheses(result); } else if (formatToken.flagZero) { startIndex++; return padding(result, startIndex);
private CharSequence transformFromNull() { formatToken.flagZero = false; return padding("null", 0); }
private CharSequence transformFromCharacter() { if (arg == null) { return padding("null", 0); } if (arg instanceof Character) { return padding(String.valueOf(arg), 0); } else if (arg instanceof Byte || arg instanceof Short || arg instanceof Integer) { int codePoint = ((Number) arg).intValue(); if (!Character.isValidCodePoint(codePoint)) { throw new IllegalFormatCodePointException(codePoint); } CharSequence result = (codePoint < Character.MIN_SUPPLEMENTARY_CODE_POINT) ? String.valueOf((char) codePoint) : String.valueOf(Character.toChars(codePoint)); return padding(result, 0); } else { throw badArgumentType(); } }
private void transformA() { if (arg instanceof Float) { throw new RuntimeException("Float.toHexString is outside the GWT subset"); } else if (arg instanceof Double) { throw new RuntimeException("Double.toHexString is outside the GWT subset"); } else { throw badArgumentType(); } }
StringBuilder result = toStringBuilder(source); if (paddingRight) { result.append(paddingChars);
private CharSequence transformFromFloat() { if (arg == null) { return transformFromNull(); throw badArgumentType(); CharSequence specialNumberResult = transformFromSpecialNumber(); if (specialNumberResult != null) { return specialNumberResult; case 'a': case 'A': transformA(); break; case 'e': case 'E': transformE(result); break; case 'f': transformF(result); break; case 'g': case 'G': transformG(result); break; default: if ('-' == result.charAt(0)) { if (formatToken.flagParenthesis) { return wrapParentheses(result);
outputCharSequence(format, plainTextStart, plainTextEnd); int index = token.getArgIndex() == FormatToken.UNSET ? currentObjectIndex++ : token.getArgIndex(); argument = getArgument(args, index, fsp, lastArgument, hasLastArgumentSet); lastArgument = argument; hasLastArgumentSet = true; CharSequence substitution = transform(token, argument); outputCharSequence(substitution, 0, substitution.length());
value = ((Byte) arg).longValue(); } else { throw badArgumentType(); return wrapParentheses(result); } else if (formatToken.flagZero) { startIndex++; return padding(result, startIndex);
private CharSequence transformFromPercent() { return padding("%", 0); }
private CharSequence transformFromCharacter() { if (arg == null) { return padding("null", 0); } if (arg instanceof Character) { return padding(String.valueOf(arg), 0); } else if (arg instanceof Byte || arg instanceof Short || arg instanceof Integer) { int codePoint = ((Number) arg).intValue(); if (!Character.isValidCodePoint(codePoint)) { throw new IllegalFormatCodePointException(codePoint); } CharSequence result = (codePoint < Character.MIN_SUPPLEMENTARY_CODE_POINT) ? String.valueOf((char) codePoint) : String.valueOf(Character.toChars(codePoint)); return padding(result, 0); } else { throw badArgumentType(); } }
private void transformA() { if (arg instanceof Float) { throw new RuntimeException("Float.toHexString is outside the GWT subset"); } else if (arg instanceof Double) { throw new RuntimeException("Double.toHexString is outside the GWT subset"); } else { throw badArgumentType(); } }
StringBuilder result = toStringBuilder(source); if (paddingRight) { result.append(paddingChars);
@Override public String toString() { return SimpleFormat.format("IN: %s OUT: %s", in, out); }
private CharSequence transformFromDateTime() { if (arg == null) { return transformFromNull(); } // Ignore calendar... // this is a total hack... as we don't care... Date date = null; { if (arg instanceof Long) { date = new Date(((Long) arg).longValue()); } else if (arg instanceof Date) { date = (Date) arg; } else { throw badArgumentType(); } } StringBuilder result = new StringBuilder(); result.append(date); return padding(result, 0); }
private CharSequence transformFromNull() { formatToken.flagZero = false; return padding("null", 0); }