/** * @param elements values to join by the delimiter to make one line of text * @param delimiter delimiter to put between fields * @return one line of text, with RFC 4180 escaping (values with comma are quoted; double-quotes * are escaped by doubling) and using the given delimiter */ public static String joinDelimited(Iterable<?> elements, char delimiter) { return doJoinDelimited(elements, formatForDelimiter(delimiter)); }
/** * @param elements values to join by space to make one line of text * @return one line of text, formatted according to PMML quoting rules * (\" instead of "" for escaping quotes; ignore space surrounding values */ public static String joinPMMLDelimited(Iterable<?> elements) { String rawResult = doJoinDelimited(elements, formatForDelimiter(' ')); // Must change "" into \" return TWO_DOUBLE_QUOTE_ESC.matcher(rawResult).replaceAll(SLASH_QUOTE_ESC); }
/** * @param elements numbers to join by space to make one line of text * @return one line of text, formatted according to PMML quoting rules */ public static String joinPMMLDelimitedNumbers(Iterable<? extends Number> elements) { // bit of a workaround because NON_NUMERIC quote mode still quote "-1"! CSVFormat format = formatForDelimiter(' ').withQuoteMode(QuoteMode.NONE); // No quoting, no need to convert quoting return doJoinDelimited(elements, format); }
/** * @param elements values to join by the delimiter to make one line of text * @param delimiter delimiter to put between fields * @return one line of text, with RFC 4180 escaping (values with comma are quoted; double-quotes * are escaped by doubling) and using the given delimiter */ public static String joinDelimited(Iterable<?> elements, char delimiter) { return doJoinDelimited(elements, formatForDelimiter(delimiter)); }
/** * @param elements values to join by space to make one line of text * @return one line of text, formatted according to PMML quoting rules * (\" instead of "" for escaping quotes; ignore space surrounding values */ public static String joinPMMLDelimited(Iterable<?> elements) { String rawResult = doJoinDelimited(elements, formatForDelimiter(' ')); // Must change "" into \" return TWO_DOUBLE_QUOTE_ESC.matcher(rawResult).replaceAll(SLASH_QUOTE_ESC); }
/** * @param elements numbers to join by space to make one line of text * @return one line of text, formatted according to PMML quoting rules */ public static String joinPMMLDelimitedNumbers(Iterable<? extends Number> elements) { // bit of a workaround because NON_NUMERIC quote mode still quote "-1"! CSVFormat format = formatForDelimiter(' ').withQuoteMode(QuoteMode.NONE); // No quoting, no need to convert quoting return doJoinDelimited(elements, format); }