SSJ
V. 2.6.

umontreal.iro.lecuyer.util
Class TextDataReader

java.lang.Object
  extended by umontreal.iro.lecuyer.util.TextDataReader

public class TextDataReader
extends Object

Provides static methods to read data from text files.


Constructor Summary
TextDataReader()
           
 
Method Summary
static String[][] readCSVData(File file, char colDelim, char stringDelim)
          This is equivalent to readDoubleData2D, for reading strings.
static String[][] readCSVData(Reader input, char colDelim, char stringDelim)
          Reads comma-separated values (CSV) from reader input, and returns a 2D array of strings corresponding to the read data.
static String[][] readCSVData(String file, char colDelim, char stringDelim)
          This is equivalent to readDoubleData2D, for reading strings.
static String[][] readCSVData(URL url, char colDelim, char stringDelim)
          Connects to the URL referred to by the URL object url, and calls readCSVData to obtain a matrix of strings from the resource.
static double[] readDoubleData(File file)
          Opens the file referred to by the file object file, and calls readDoubleData to obtain an array of double-precision values from the file.
static double[] readDoubleData(Reader input)
          Reads an array of double-precision values from the reader input.
static double[] readDoubleData(String file)
          Opens the file with name file, and calls readDoubleData to obtain an array of double-precision values from the file.
static double[] readDoubleData(URL url)
          Connects to the URL referred to by the URL object url, and calls readDoubleData to obtain an array of double-precision values from the resource.
static double[][] readDoubleData2D(File file)
          Opens the file referred to by the file object file, and calls readDoubleData2D to obtain a matrix of double-precision values from the file.
static double[][] readDoubleData2D(Reader input)
          Uses the reader input to obtain a 2-dimensional array of double-precision values.
static double[][] readDoubleData2D(String file)
          Opens the file with name file, and calls readDoubleData2D to obtain a matrix of double-precision values from the file.
static double[][] readDoubleData2D(URL url)
          Connects to the URL referred to by the URL object url, and calls readDoubleData2D to obtain a matrix of double-precision values from the resource.
static int[] readIntData(File file)
          This is equivalent to readDoubleData, for reading integers.
static int[] readIntData(Reader input)
          This is equivalent to readDoubleData, for reading integers.
static int[] readIntData(String file)
          This is equivalent to readDoubleData, for reading integers.
static int[] readIntData(URL url)
          Connects to the URL referred to by the URL object url, and calls readIntData to obtain an array of integers from the resource.
static int[][] readIntData2D(File file)
          This is equivalent to readDoubleData2D, for reading integers.
static int[][] readIntData2D(Reader input)
          This is equivalent to readDoubleData2D, for reading integers.
static int[][] readIntData2D(String file)
          This is equivalent to readDoubleData2D, for reading integers.
static int[][] readIntData2D(URL url)
          Connects to the URL referred to by the URL object url, and calls readDoubleData to obtain a matrix of integers from the resource.
static String[] readStringData(File file)
          This is equivalent to readDoubleData, for reading strings.
static String[] readStringData(Reader input)
          Reads an array of strings from the reader input.
static String[] readStringData(String file)
          This is equivalent to readDoubleData, for reading strings.
static String[] readStringData(URL url)
          Connects to the URL referred to by the URL object url, and calls readStringData to obtain an array of integers from the resource.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextDataReader

public TextDataReader()
Method Detail

readDoubleData

public static double[] readDoubleData(Reader input)
                               throws IOException
Reads an array of double-precision values from the reader input. For each line of text obtained from the given reader, this method trims whitespaces, and parses the remaining text as a double-precision value. This method ignores every character other than the digits, the plus and minus signs, the period (.), and the letters e and E. Moreover, lines starting with a pound sign (#) are considered as comments and thus skipped. The method returns an array containing all the parsed values.

Parameters:
input - the reader to obtain data from.
Returns:
the obtained array of double-precision values.
Throws:
IOException - if an I/O error occurs.

readDoubleData

public static double[] readDoubleData(URL url)
                               throws IOException
Connects to the URL referred to by the URL object url, and calls readDoubleData to obtain an array of double-precision values from the resource.

Parameters:
url - the URL object representing the resource to read.
Returns:
the obtained array of double-precision values.
Throws:
IOException - if an I/O error occurs.

readDoubleData

public static double[] readDoubleData(File file)
                               throws IOException
Opens the file referred to by the file object file, and calls readDoubleData to obtain an array of double-precision values from the file.

Parameters:
file - the file object representing the file to read.
Returns:
the obtained array of double-precision values.
Throws:
IOException - if an I/O error occurs.

readDoubleData

public static double[] readDoubleData(String file)
                               throws IOException
Opens the file with name file, and calls readDoubleData to obtain an array of double-precision values from the file.

Parameters:
file - the name of the file to read.
Returns:
the obtained array of double-precision values.
Throws:
IOException - if an I/O error occurs.

readIntData

public static int[] readIntData(Reader input)
                         throws IOException
This is equivalent to readDoubleData, for reading integers.

Parameters:
input - the reader to obtain data from.
Returns:
the obtained array of integers.
Throws:
IOException - if an I/O error occurs.

readIntData

public static int[] readIntData(URL url)
                         throws IOException
Connects to the URL referred to by the URL object url, and calls readIntData to obtain an array of integers from the resource.

Parameters:
url - the URL object representing the resource to read.
Returns:
the obtained array of integers.
Throws:
IOException - if an I/O error occurs.

readIntData

public static int[] readIntData(File file)
                         throws IOException
This is equivalent to readDoubleData, for reading integers.

Parameters:
file - the file object represented to file to read.
Returns:
the array of integers.
Throws:
IOException - if an I/O error occurs.

readIntData

public static int[] readIntData(String file)
                         throws IOException
This is equivalent to readDoubleData, for reading integers.

Parameters:
file - the name of the file to read.
Returns:
the array of integers.
Throws:
IOException - if an I/O error occurs.

readStringData

public static String[] readStringData(Reader input)
                               throws IOException
Reads an array of strings from the reader input. For each line of text obtained from the given reader, this method trims leading and trailing whitespaces, and stores the remaining string. Lines starting with a pound sign (#) are considered as comments and thus skipped. The method returns an array containing all the read strings.

Parameters:
input - the reader to obtain data from.
Returns:
the obtained array of strings.
Throws:
IOException - if an I/O error occurs.

readStringData

public static String[] readStringData(URL url)
                               throws IOException
Connects to the URL referred to by the URL object url, and calls readStringData to obtain an array of integers from the resource.

Parameters:
url - the URL object representing the resource to read.
Returns:
the obtained array of strings.
Throws:
IOException - if an I/O error occurs.

readStringData

public static String[] readStringData(File file)
                               throws IOException
This is equivalent to readDoubleData, for reading strings.

Parameters:
file - the file object represented to file to read.
Returns:
the array of strings.
Throws:
IOException - if an I/O error occurs.

readStringData

public static String[] readStringData(String file)
                               throws IOException
This is equivalent to readDoubleData, for reading strings.

Parameters:
file - the name of the file to read.
Returns:
the array of strings.
Throws:
IOException - if an I/O error occurs.

readDoubleData2D

public static double[][] readDoubleData2D(Reader input)
                                   throws IOException
Uses the reader input to obtain a 2-dimensional array of double-precision values. For each line of text obtained from the given reader, this method trims whitespaces, and parses the remaining text as an array of double-precision values. Every character other than the digits, the plus (+) and minus (-) signs, the period (.), and the letters e and E are ignored and can be used to separate numbers on a line. Moreover, lines starting with a pound sign (#) are considered as comments and thus skipped. The lines containing only a semicolon sign (;) are considered as empty lines. The method returns a 2D array containing all the parsed values. The returned array is not always rectangular.

Parameters:
input - the reader to obtain data from.
Returns:
the 2D array of double-precison values.
Throws:
IOException - if an I/O error occurs.

readDoubleData2D

public static double[][] readDoubleData2D(URL url)
                                   throws IOException
Connects to the URL referred to by the URL object url, and calls readDoubleData2D to obtain a matrix of double-precision values from the resource.

Parameters:
url - the URL object representing the resource to read.
Returns:
the obtained matrix of double-precision values.
Throws:
IOException - if an I/O error occurs.

readDoubleData2D

public static double[][] readDoubleData2D(File file)
                                   throws IOException
Opens the file referred to by the file object file, and calls readDoubleData2D to obtain a matrix of double-precision values from the file.

Parameters:
file - the file object representing the file to read.
Returns:
the obtained matrix of double-precision values.
Throws:
IOException - if an I/O error occurs.

readDoubleData2D

public static double[][] readDoubleData2D(String file)
                                   throws IOException
Opens the file with name file, and calls readDoubleData2D to obtain a matrix of double-precision values from the file.

Parameters:
file - the name of the file to read.
Returns:
the obtained matrix of double-precision values.
Throws:
IOException - if an I/O error occurs.

readIntData2D

public static int[][] readIntData2D(Reader input)
                             throws IOException
This is equivalent to readDoubleData2D, for reading integers.

Parameters:
input - the reader to obtain data from.
Returns:
the obtained 2D array of integers.
Throws:
IOException - if an I/O error occurs.

readIntData2D

public static int[][] readIntData2D(URL url)
                             throws IOException
Connects to the URL referred to by the URL object url, and calls readDoubleData to obtain a matrix of integers from the resource.

Parameters:
url - the URL object representing the resource to read.
Returns:
the obtained matrix of integers.
Throws:
IOException - if an I/O error occurs.

readIntData2D

public static int[][] readIntData2D(File file)
                             throws IOException
This is equivalent to readDoubleData2D, for reading integers.

Parameters:
file - the file object represented to file to read.
Returns:
the obtained matrix of integer values.
Throws:
IOException - if an I/O error occurs.

readIntData2D

public static int[][] readIntData2D(String file)
                             throws IOException
This is equivalent to readDoubleData2D, for reading integers.

Parameters:
file - the name of the file to read.
Returns:
the obtained matrix of integer values.
Throws:
IOException - if an I/O error occurs.

readCSVData

public static String[][] readCSVData(Reader input,
                                     char colDelim,
                                     char stringDelim)
                              throws IOException
Reads comma-separated values (CSV) from reader input, and returns a 2D array of strings corresponding to the read data. Lines are delimited using line separators r, n, and rn. Each line contains one or more values, separated by the column delimiter colDelim. If a string of characters is surrounded with the string delimiter stringDelim, any line separator and column separator appear in the string. The string delimiter can be inserted in such a string by putting it twice. Usually, the column delimiter is the comma, and the string delimiter is the quotation mark. The following example uses these default delimiters.
          "One","Two","Three"
           1,2,3
          "String with "" delimiter",n,m
 
This produces a matrix of strings with dimensions 3×3. The first row contains the strings One, Two, and Three while the second row contains the strings 1, 2, and 3. The first column of the last row contains the string String with " delimiter.

Parameters:
input - the reader to obtain data from.
colDelim - the column delimiter.
stringDelim - the string delimiter.
Returns:
the obtained 2D array of strings.
Throws:
IOException - if an I/O error occurs.

readCSVData

public static String[][] readCSVData(URL url,
                                     char colDelim,
                                     char stringDelim)
                              throws IOException
Connects to the URL referred to by the URL object url, and calls readCSVData to obtain a matrix of strings from the resource.

Parameters:
url - the URL object representing the resource to read.
colDelim - the column delimiter.
stringDelim - the string delimiter.
Returns:
the obtained matrix of strings.
Throws:
IOException - if an I/O error occurs.

readCSVData

public static String[][] readCSVData(File file,
                                     char colDelim,
                                     char stringDelim)
                              throws IOException
This is equivalent to readDoubleData2D, for reading strings.

Parameters:
file - the file object represented to file to read.
colDelim - the column delimiter.
stringDelim - the string delimiter.
Returns:
the obtained matrix of string values.
Throws:
IOException - if an I/O error occurs.

readCSVData

public static String[][] readCSVData(String file,
                                     char colDelim,
                                     char stringDelim)
                              throws IOException
This is equivalent to readDoubleData2D, for reading strings.

Parameters:
file - the name of the file to read.
colDelim - the column delimiter.
stringDelim - the string delimiter.
Returns:
the obtained matrix of string values.
Throws:
IOException - if an I/O error occurs.

SSJ
V. 2.6.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.