public class ALDParser extends Object
This class supplies convenience methods to parse and format objects according to Alida's DataIO conventions.
Modifier and Type | Field and Description |
---|---|
static HashMap<Character,Character> |
brackets
Hashmap to hold pairs of opening and closing brackets.
|
private static boolean |
debug |
Constructor and Description |
---|
ALDParser() |
Modifier and Type | Method and Description |
---|---|
static String |
arrayToString(Object obj)
Formats an array according to Alida data I/O conventions.
|
static String |
parseBracket(String str)
Parses a string for a matching bracket.
|
static String |
parseBracket(String str,
char closeBracket)
Parses a string for a matching bracket.
|
static HashMap<String,String> |
parseNameValuePairs(String str)
Parses a comma separated list of 'name=value' pairs into a hash map.
|
static Object |
readArray1D(Class<?> cl,
String valueString)
Parses a string into a 1D-array.
|
static Object |
readArray2D(Class<?> cl,
String valueString)
Parses a string into a 2D-array.
|
static LinkedList<String> |
split(String str,
char sepChar)
Split a string at each occurance of
sepChar . |
public static String parseBracket(String str)
The first character of this string is interpreted as opening backet,
the closing bracket is assumed to coincide with the internal
definition in brackets
. Upon return the outmost matching
pair of brackets is removed from str
.
str
- String to parsepublic static String parseBracket(String str, char closeBracket)
The first character of this string is interpreted as opening backet,
the character closeBracket
as closing bracket.
str
- String to parse.closeBracket
- Closing bracket character.public static HashMap<String,String> parseNameValuePairs(String str) throws ALDDataIOProviderException
The names found are used as keys in the hash map, while the values are put into the map as corresponding values.
str
- String to parse.ALDDataIOProviderException
public static LinkedList<String> split(String str, char sepChar)
sepChar
.
Note that occurances of sepChar
enclosed in
brackets are not considered as separators.
str
- String to split.sepChar
- Separating character.str
.public static String arrayToString(Object obj)
obj
- Array to be formatted.public static Object readArray1D(Class<?> cl, String valueString) throws ALDDataIOProviderException
The type of the returned array depends on the specified class.
Only primitive and data wrapper types as well as strings are support at the moment.
The valueString
is assume to contain a comma separated list
of nested valueString
for each element of the array enclosed in matching square brackets,
e.g. [1.2 , 2.2 , 3.1]
.
cl
- Desired type of array.valueString
- String to parse.ALDDataIOProviderException
public static Object readArray2D(Class<?> cl, String valueString) throws ALDDataIOProviderException
cl
- Desired type of array.valueString
- Input string to parse.ALDDataIOProviderException
Copyright © 2010–2021 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.