Parse() public method

Load key value pairs (properties) from an input Stream expected to have ISO-8859-1 encoding (code page 28592). The input stream (usually reading from a ".properties" file) consists of a series of lines (terminated by \r, \n or \r\n) each a key value pair, a comment or a blank line.

Leading whitespace (spaces, tabs, formfeeds) are ignored at the start of any line - and a line that is empty or contains only whitespace is blank and ignored.

A line with the first non-whitespace character is a '#' or '!' is a comment line and the rest of the line is ignored.

If the first non-whitespace character is not '#' or '!' then it is the start of a key. A key is all the characters up to the first whitespace or a key/value separator - '=' or ':'.

The separator is optional. Any whitespace after the key or after the separator (if present) is ignored.

The first non-whitespace character after the separator (or after the key if no separator) begins the value. The value may include whitespace, separators, or comment characters.

Any unicode character may be included in either key or value by using escapes preceded by the escape character '\'.

The following special cases are defined:

'\t' - horizontal tab. '\f' - form feed. '\r' - return '\n' - new line '\\' - add escape character. '\ ' - add space in a key or at the start of a value. '\!', '\#' - add comment markers at the start of a key. '\=', '\:' - add a separator in a key.

Any unicode character using the following escape:

'\uXXXX' - where XXXX represents the unicode character code as 4 hexadecimal digits.

Finally, longer lines can be broken by putting an escape at the very end of the line. Any leading space (unless escaped) is skipped at the beginning of the following line.

Examples a-key = a-value a-key : a-value a-key=a-value a-key a-value

All the above will result in the same key/value pair - key "a-key" and value "a-value".

! comment... # another comment...

The above are two examples of comments.

Honk\ Kong = Near China

The above shows how to embed a space in a key - key is "Hong Kong", value is "Near China".

a-longer-key-example = a really long value that is \ split over two lines.

An example of a long line split into two.

public Parse ( Stream stream ) : void
stream Stream The input stream that the properties are read from.
return void
Beispiel #1
0
        public void load(java.io.Reader toLoad)
        {
            Kajabity.Tools.Java.JavaPropertyReader reader = new Kajabity.Tools.Java.JavaPropertyReader(this);
            reader.Parse(biz.ritter.io.Reader2Stream.convert(toLoad));
//              new biz.ritter.io.StreamWrapper (
//                biz.ritter.io.Reader2Stream.convert (toLoad), null // better replace by converted Apache commons IO
//              )
//            );

            /* old but only with changes usable
             * Kajabity.Tools.Java.JavaPropertyReader reader = new Kajabity.Tools.Java.JavaPropertyReader(this);
             * reader.Parse(toLoad);
             */
        }
Beispiel #2
0
        /// <summary>
        /// Load Java Properties from a stream with the specified encoding and
        /// expecting the format as described in <see cref="JavaPropertyReader"/>.
        /// </summary>
        /// <param name="streamIn">An input stream to read properties from.</param>
        /// <param name="encoding">The stream's encoding.</param>
        public void Load(Stream streamIn, Encoding encoding)
        {
            JavaPropertyReader reader = new JavaPropertyReader(this);

            reader.Parse(streamIn, encoding);
        }
Beispiel #3
0
        /// <summary>
        /// Load Java Properties from a stream expecting the format as described in <see cref="JavaPropertyReader"/>.
        /// </summary>
        /// <param name="streamIn">An input stream to read properties from.</param>
        /// <exception cref="ParseException">If the stream source is invalid.</exception>
        public void Load(Stream streamIn)
        {
            JavaPropertyReader reader = new JavaPropertyReader(this);

            reader.Parse(streamIn);
        }
 /// <summary>
 /// Load Java Properties from a stream with the specified encoding and 
 /// expecting the format as described in <see cref="JavaPropertyReader"/>.
 /// </summary>
 /// <param name="streamIn">An input stream to read properties from.</param>
 /// <param name="encoding">The stream's encoding.</param>
 public void Load( Stream streamIn, Encoding encoding )
 {
     JavaPropertyReader reader = new JavaPropertyReader( this );
     reader.Parse( streamIn, encoding );
 }
 /// <summary>
 /// Load Java Properties from a stream expecting the format as described in <see cref="JavaPropertyReader"/>.
 /// </summary>
 /// <param name="streamIn">An input stream to read properties from.</param>
 /// <exception cref="ParseException">If the stream source is invalid.</exception>
 public void Load( Stream streamIn )
 {
     JavaPropertyReader reader = new JavaPropertyReader( this );
     reader.Parse( streamIn );
 }