|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.geotools.io.LineFormat
Parse a line of text data. This class is mostly used for parsing lines in a matrix or a table.
Each column may contains numbers, dates, or other objects parseable by some Format
implementations. The example below reads dates in the first column and numbers in all
remaining columns.
may be used for reading a matrix with an unknow number of columns, while requiring that all lines have the same number of columns. The example below gets the number of columns while reading the first line, and ensure that all subsequent lines have the same number of columns. If one line violate this condition, then afinal LineParser parser=new LineFormat(new Format[] {DateFormat.getDateTimeInstance()
,NumberFormat.getNumberInstance()
});
ParseException
will be thrown. The check if performed by the method when
the array is non-nul.
This code can work as well with dates instead of numbers. In this case, the values returned will be microseconds ellapsed since January 1st, 1970.double[] data=null; finalBufferedReader
in = newBufferedReader
(newFileReader
("MATRIX.TXT")); for (String
line; (line=in.readLine())!=null;) { parser.setLine(line); data = parser.getValues(data); // ... process 'data' here ... });
ParseException
may be thrown because a string can't be parsed, because an object
can't be converted into a number or because a line don't have the expected number of columns.
In all case, it is possible to gets the index of the first problem found using
ParseException.getErrorOffset()
.
Format
.Constructor Summary | |
LineFormat()
Constructs a new line parser for the default locale. |
|
LineFormat(java.text.Format format)
Construit un objet qui lira des dates, des nombres ou tous autres objets ?crits selon le format sp?cifi?. |
|
LineFormat(java.text.Format[] formats)
Construit un objet qui lira des dates, des nombres ou tous autres objets ?crits selon les formats sp?cifi?s. |
|
LineFormat(java.util.Locale locale)
Construit un objet qui lira des nombres ?crits selon les convention du pays sp?cifi?. |
Method Summary | |
void |
clear()
Oublie toute les donn?es m?moris?es. |
java.lang.Object |
getValue(int index)
Retourne la valeur ? l'index sp?cifi?. |
int |
getValueCount()
Retourne le nombre de donn?es trouv?es dans la derni?re ligne ? avoir ?t? sp?cifi?e ? setLine(String) . |
byte[] |
getValues(byte[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
double[] |
getValues(double[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
float[] |
getValues(float[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
int[] |
getValues(int[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
long[] |
getValues(long[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
short[] |
getValues(short[] array)
Copie vers le tableau sp?cifi? les valeurs lues dans la ligne. |
int |
setLine(java.lang.String line)
D?fini la prochaine ligne qui sera ? interpr?ter. |
int |
setLine(java.lang.String line,
int lower,
int upper)
D?fini la prochaine ligne qui sera ? interpr?ter. |
void |
setValue(int index,
java.lang.Object value)
Modifie ou ajoute une valeur. |
java.lang.String |
toString()
Retourne les donn?es sous forme de cha?ne de caract?res. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public LineFormat()
public LineFormat(java.util.Locale locale)
Locale.US
pour lire
des nombres qui utilisent le point comme s?parateur d?cimal.
public LineFormat(java.text.Format format) throws java.lang.NullPointerException
format
- Format ? utiliser.
java.lang.NullPointerException
- si est nul.public LineFormat(java.text.Format[] formats) throws java.lang.NullPointerException
formats
- Tableau de formats ? utiliser.
java.lang.NullPointerException
- si est nul ou si si un des formats est nul.Method Detail |
public void clear()
getValueCount()
retournera 0.
public int setLine(java.lang.String line) throws java.text.ParseException
line
- Ligne ? interpr?ter.
getValueCount()
.
java.text.ParseException
- si des ?l?ments n'ont pas pu ?tre interpr?t?s.public int setLine(java.lang.String line, int lower, int upper) throws java.text.ParseException
line
- Ligne ? interpr?ter.lower
- Index du premier caract?re de ? prendre en compte.upper
- Index suivant celui du dernier caract?re de ? prendre en compte.
getValueCount()
.
java.text.ParseException
- si des ?l?ments n'ont pas pu ?tre interpr?t?s.public int getValueCount()
setLine(String)
.
public void setValue(int index, java.lang.Object value) throws java.lang.ArrayIndexOutOfBoundsException
getValueCount()
inclusivement. Si l'index est ?gal au nombre
de donn?es retourn? par getValueCount()
, alors
sera ajout? ? la fin des donn?es existante et une colonne sera ajout?e.
index
- Index de la donn?e ? modifier ou ajouter.value
- Nouvelle valeur ? retenir.
java.lang.ArrayIndexOutOfBoundsException
- si l'index est en dehors de la plage permise.public java.lang.Object getValue(int index) throws java.lang.ArrayIndexOutOfBoundsException
getValueCount()
exclusivement.
index
- Index de la donn?e demand?e.
java.lang.ArrayIndexOutOfBoundsException
- si l'index est en dehors de la plage permise.public double[] getValues(double[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre.public float[] getValues(float[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre.public long[] getValues(long[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre entier de type .public int[] getValues(int[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre entier de type .public short[] getValues(short[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre entier de type .public byte[] getValues(byte[] array) throws java.text.ParseException
setLine(String)
pour copier vers les valeurs
qui ont ?t? lues. Si est nul, cette m?thode cr?era et retournera un
tableau qui aura la longueur tout juste suffisante pour contenir toutes les donn?es.
Mais si est non-nul, alors cette m?thode exigera que la longueur du
tableau soit ?gale au nombre de donn?es.
array
- Tableau dans lequel copier les valeurs.
java.text.ParseException
- si ?tait non-nul et que sa longueur
ne correspond pas au nombre de donn?es lues, ou si une des donn?es lues
n'est pas convertible en nombre entier de type .public java.lang.String toString()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |