private String[] splitLine( final String line, final boolean trim ) { final ArrayList row = new ArrayList(); final CSVTokenizer tokenizer = new CSVTokenizer( line, getSeparator(), "\"", trim ); while ( tokenizer.hasMoreElements() ) { final String o = (String) tokenizer.nextElement(); if ( trim ) { row.add( o.trim() ); } else { row.add( o ); } } return (String[]) row.toArray( new String[row.size()] ); }
/** * Returns the schema portion of the serialized ResourceKey string. If the string is invalid, <code>null</code> will * be returned. * * @param data the String serialized version of a <code>ResourceKey</code> * @return the schema object. */ public static Object readSchemaFromString( final String data ) { if ( data == null ) { return null; } final CSVTokenizer tokenizer = new CSVTokenizer( data, DELIMITER, "\"", false ); if ( tokenizer.hasMoreElements() == false ) { return null; } final String tempData = tokenizer.nextToken(); if ( tempData.startsWith( SERIALIZATION_PREFIX ) ) { return tempData.substring( SERIALIZATION_PREFIX.length() ); } return null; }
/** * Looks up the property with the given name. This replaces the name with the current index position. * * @param name * the name of the property to look up. * @return the translated value. */ protected String lookupVariable( final String name ) { final CSVTokenizer tokenizer = new CSVTokenizer( name, false ); if ( tokenizer.hasMoreTokens() == false ) { return null; } final String varName = tokenizer.nextToken(); final StringBuilder b = new StringBuilder( name.length() ); b.append( '{' ); b.append( String.valueOf( fields.size() ) ); while ( tokenizer.hasMoreTokens() ) { b.append( ',' ); b.append( tokenizer.nextToken() ); } b.append( '}' ); final String formatString = b.toString(); fields.add( varName ); return formatString; }
final CSVTokenizer tokenizer = new CSVTokenizer( s, false ); final ArrayList<Object> elements = new ArrayList<Object>(); while ( tokenizer.hasMoreTokens() ) {
public List<List<String>> parseSampleContents() { String delim = getDelimiter(); if ( contents == null ) { throw new IllegalStateException( "Sample Contents is null, nothing to parse" ); //$NON-NLS-1$ } else if ( delim == null || "".equals( delim ) ) { //$NON-NLS-1$ // use a random delimiter that will result in an un-parsed list delim = "~!@#$%"; } List<List<String>> sample = new ArrayList<List<String>>(); CSVTokenizer csvTokenizer; String enclosure = null; if ( !"".equals( getEnclosure() ) ) { enclosure = getEnclosure(); } for ( String line : contents ) { csvTokenizer = new CSVTokenizer( line, delim, enclosure ); List<String> rowData = new ArrayList<String>(); while ( csvTokenizer.hasMoreTokens() ) { // get next token and store it in the list rowData.add( csvTokenizer.nextToken() ); } sample.add( rowData ); } return sample; }
final CSVTokenizer csvTokenizer = new CSVTokenizer( String.valueOf( s ), ",", "\"", false ); final int length = csvTokenizer.countTokens(); final String[] rolesArray = new String[length];
/** * Splits a given string at the given separator string. Duplicate separators will be merged into a single separator * occurance. * * @param string the text to be split. * @param separator the separator chacters used for the split. * @param quate the quoting character. * @return the splitted array. */ public static String[] split( final String string, final String separator, final String quate ) { final CSVTokenizer strtok = new CSVTokenizer( string, separator, quate, false ); final String[] tokens = new String[ strtok.countTokens() ]; int i = 0; while ( strtok.hasMoreTokens() ) { final String token = strtok.nextToken(); if ( token.length() > 0 ) { tokens[ i ] = ( token ); i += 1; } } if ( i == tokens.length ) { return tokens; } final String[] retval = new String[ i ]; System.arraycopy( tokens, 0, retval, 0, i ); return retval; }
protected Object parseDefaultValue( String defaultValue, DataType dataType ) { if ( defaultValue == null ) { return null; } CSVTokenizer csvt = new CSVTokenizer( defaultValue, "|", "\"", true ); switch ( dataType ) { case BOOLEAN: return parseBooleanDefaultParam( defaultValue, csvt ); case NUMERIC: return parseDoubleDefaultParam( defaultValue, csvt ); default: return parseStringDefaultParam( defaultValue, csvt ); } }
final CSVTokenizer tokenizer = new CSVTokenizer( factoryParameters, ":", "\"", false ); while ( tokenizer.hasMoreTokens() ) { final String entry = tokenizer.nextToken(); final CSVTokenizer innerTokenizer = new CSVTokenizer( entry, "=", "\"", false ); final ParameterKey key; if ( innerTokenizer.hasMoreElements() ) {
final CSVTokenizer strtok = new CSVTokenizer(string, separator, quate, false); final String[] tokens = new String[strtok.countTokens()]; int i = 0;
/** * Creates the list of column names that should be mapped into the method or constructor parameters. * * @param query * the query-string. * @param parameterStartIdx * the index from where to read the parameter list. * @return an array with column names. * @throws ReportDataFactoryException * if something goes wrong. */ private String[] createParameterList( final String query, final int parameterStartIdx ) throws ReportDataFactoryException { final int parameterEndIdx = query.lastIndexOf( ')' ); if ( parameterEndIdx < parameterStartIdx ) { throw new ReportDataFactoryException( "Malformed query: " + query ); //$NON-NLS-1$ } final String parameterText = query.substring( parameterStartIdx + 1, parameterEndIdx ); final CSVTokenizer tokenizer = new CSVTokenizer( parameterText, ",", "\"", false ); final int size = tokenizer.countTokens(); final String[] parameterNames = new String[size]; int i = 0; while ( tokenizer.hasMoreTokens() ) { parameterNames[i] = tokenizer.nextToken(); i += 1; } return parameterNames; }
/** * Splits a given string at the given separator string. Duplicate separators will result in empty strings thus * preserving the number of fields specified in the original string. * * @param string the text to be split. * @param separator the separator chacters used for the split. * @param quate the quoting character. * @return the splitted array. */ public static String[] splitCSV( final String string, final String separator, final String quate ) { final CSVTokenizer strtok = new CSVTokenizer( string, separator, quate, false ); final String[] tokens = new String[ strtok.countTokens() ]; int i = 0; while ( strtok.hasMoreTokens() ) { final String token = strtok.nextToken(); tokens[ i ] = ( token ); i += 1; } return tokens; }
/** * Splits a given string at the given separator string. Duplicate separators will result in empty strings thus * preserving the number of fields specified in the original string. * * @param string the text to be split. * @param separator the separator chacters used for the split. * @param quate the quoting character. * @return the splitted array. */ public static String[] splitCSV(final String string, final String separator, final String quate) { final CSVTokenizer strtok = new CSVTokenizer(string, separator, quate, false); final String[] tokens = new String[strtok.countTokens()]; int i = 0; while (strtok.hasMoreTokens()) { final String token = strtok.nextToken(); tokens[i] = (token); i += 1; } return tokens; }
++row; csvt = new CSVTokenizer( line, delimiter, enclosure, false ); rowData = new ArrayList<String>(); count = 0;
/** * Boots modules, which have been spcified in the "org.pentaho.reporting.engine.classic.core.boot.Modules" * configuration parameter. */ private void bootAdditionalModules() { try { final String bootModules = getGlobalConfig().getConfigProperty( "org.pentaho.reporting.engine.classic.core.boot.Modules" ); // NON-NLS if ( bootModules != null ) { final CSVTokenizer csvToken = new CSVTokenizer( bootModules, "," ); while ( csvToken.hasMoreTokens() ) { final String token = csvToken.nextToken(); getPackageManager().load( token ); } } } catch ( SecurityException se ) { // we'll ignore any Security exception .. ClassicEngineBoot.logger.info( "Security settings forbid to check the system properties for extension modules." ); // NON-NLS } catch ( Exception se ) { ClassicEngineBoot.logger.error( "An error occured while checking the system properties for extension modules.", // NON-NLS se ); } }
final CSVTokenizer tokenizer = new CSVTokenizer( resourceKeyString, DELIMITER, "\"", false ); if ( tokenizer.hasMoreElements() == false ) { throw new ResourceKeyCreationException( "Schema is missing" );
protected String lookupVariable( final String entity ) { // first, split the entity into separate strings (separator is '.'). final CSVTokenizer tokenizer = new CSVTokenizer( entity, "." ); if ( tokenizer.hasMoreTokens() ) { final String name = tokenizer.nextToken(); final Object base = performInitialLookup( name ); try { if ( tokenizer.hasMoreTokens() ) { return BeanPropertyLookupParser.continueLookupVariable( tokenizer, base ); } else { return ConverterRegistry.toAttributeValue( base ); } } catch ( BeanException e ) { return entity; } } return entity; }
strtok = strtokenizer; } else { final CSVTokenizer strtokenizer = new CSVTokenizer( sequence, separator, quote, false ); resultList = new ArrayList( strtokenizer.countTokens() ); strtok = strtokenizer;
final CSVTokenizer strtokenizer = new CSVTokenizer(sequence, separator, quote, false); resultList = new ArrayList(strtokenizer.countTokens()); strtok = strtokenizer;
public void testCSVTokenizer() { final String example = "\"Test\""; final CSVTokenizer tokenizer = new CSVTokenizer( example, false ); assertTrue( "Tokenizer has at least one element", tokenizer.hasMoreTokens() ); assertEquals( tokenizer.nextToken(), "Test" ); }