fr.umlv.unitex.io
Class UnicodeIO

java.lang.Object
  extended by fr.umlv.unitex.io.UnicodeIO

public class UnicodeIO
extends java.lang.Object

This class provides methods for loading and saving UTF-16LE texts.

Author:
Sébastien Paumier

Constructor Summary
UnicodeIO()
           
 
Method Summary
static boolean isAUnicodeLittleEndianFile(java.io.File f)
           
static boolean isDigit(char c)
          Tests if a character is a digit
static java.io.FileInputStream openUnicodeLittleEndianFileInputStream(java.io.File f)
          Opens and returns a file input stream.
static java.io.FileOutputStream openUnicodeLittleEndianFileOutputStream(java.io.File f)
          Opens and returns a file output stream.
static int readChar(java.io.FileInputStream f)
          Reads a character from a file.
static int readCharRawly(java.io.FileInputStream f)
          Reads a character from a file, considering 0x0D and 0x0A as two distinct characters
static java.lang.String readFirstLine(java.io.File f)
          Reads the first line of a file
static java.lang.String readLine(java.io.FileInputStream f)
          Reads a line from a file
static void skipChars(java.io.FileInputStream f, int n)
          Skips characters from a file
static void skipLine(java.io.FileInputStream f)
          Skips a line in a file
static void writeChar(java.io.FileOutputStream f, char c)
          Writes a character to a file
static void writeString(java.io.FileOutputStream f, java.lang.String s)
          Writes a string to a file
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UnicodeIO

public UnicodeIO()
Method Detail

readCharRawly

public static int readCharRawly(java.io.FileInputStream f)
Reads a character from a file, considering 0x0D and 0x0A as two distinct characters

Parameters:
f - the file input stream
Returns:
a character

readChar

public static int readChar(java.io.FileInputStream f)
Reads a character from a file. If the character is 0x0D, then the following 0x0A character is skipped.

Parameters:
f - the file input stream
Returns:
a character

readLine

public static java.lang.String readLine(java.io.FileInputStream f)
Reads a line from a file

Parameters:
f - the file input stream
Returns:
a string representing the line, without the carridge return character

readFirstLine

public static java.lang.String readFirstLine(java.io.File f)
Reads the first line of a file

Parameters:
f - the file
Returns:
a string representing the first line without the carridge return character

skipChars

public static void skipChars(java.io.FileInputStream f,
                             int n)
Skips characters from a file

Parameters:
f - the file input stream
n - number of characters to skip

skipLine

public static void skipLine(java.io.FileInputStream f)
Skips a line in a file

Parameters:
f - the file input stream

isDigit

public static boolean isDigit(char c)
Tests if a character is a digit

Parameters:
c - the character to test
Returns:
true if c is a digit, false otherwise

writeChar

public static void writeChar(java.io.FileOutputStream f,
                             char c)
Writes a character to a file

Parameters:
f - the file output stream
c - the character to write

writeString

public static void writeString(java.io.FileOutputStream f,
                               java.lang.String s)
Writes a string to a file

Parameters:
f - the file output stream
s - the string to write

isAUnicodeLittleEndianFile

public static boolean isAUnicodeLittleEndianFile(java.io.File f)
                                          throws java.io.FileNotFoundException
Parameters:
f - a file
Returns:
true if f is a Unicode Little-Endian file
Throws:
java.io.FileNotFoundException - if the file cannot be opened

openUnicodeLittleEndianFileInputStream

public static java.io.FileInputStream openUnicodeLittleEndianFileInputStream(java.io.File f)
                                                                      throws NotAUnicodeLittleEndianFileException,
                                                                             java.io.FileNotFoundException
Opens and returns a file input stream.

Parameters:
f - the file
Returns:
the input stream
Throws:
NotAUnicodeLittleEndianFileException - if the file is not a Unicode Little Endian one
java.io.FileNotFoundException - if the file cannot be opened

openUnicodeLittleEndianFileOutputStream

public static java.io.FileOutputStream openUnicodeLittleEndianFileOutputStream(java.io.File f)
                                                                        throws java.io.FileNotFoundException
Opens and returns a file output stream.

Parameters:
f - the file
Returns:
the output stream
Throws:
java.io.FileNotFoundException - if the file cannot be opened