java.util.Properties.load vacío (lector de lector) throws IOException

java.util.Properties.load vacío (lector de lector) throws IOException

Lee una lista de propiedades (pares de claves y elementos) de la corriente de entrada de caracteres en un formato orientado a líneas simples.

Las propiedades se procesan en términos de líneas. Hay dos tipos de línea, líneas naturales y líneas lógicas. Una línea natural se define como una línea de caracteres que se termina ya sea por un conjunto de caracteres terminador de línea (\ n o \ r o \ r \ n) o por el final de la secuencia. Una línea natural puede ser o bien una línea en blanco, una línea de comentario, o la totalidad o una parte de un par de elementos clave. Una línea lógica contiene todos los datos de un par de elementos clave, que puede ser hacia fuera a través de varias líneas naturales adyacentes por escapar de la secuencia de terminador de línea con un carácter de barra invertida. Tenga en cuenta que una línea de comentario no puede extenderse de esta manera; cada línea natural que es un comentario debe tener su propio indicador de comentario, como se describe a continuación. Las líneas se leen de entrada hasta que se alcanza el final de la corriente.

Una línea natural que contiene sólo caracteres de espacio en blanco se considera en blanco y se ignora. Una línea de comentario tiene un ASCII '#' o '!' como su primer carácter de espacio no blanca; líneas de comentario también se ignoran y no se hacen de elementos de información clave de codificación. Además de los terminadores de línea, este formato considera el espacio caracteres ('', '\ u005Cu0020'), la lengüeta ( '\ t', '\ u005Cu0009'), y la alimentación forzada ( '\ f', '\ u005Cu000C') a ser espacio en blanco.

Si una línea lógica se extiende por varias líneas naturales, la barra invertida escapar de la secuencia de terminación de línea, la secuencia de terminación de línea, y cualquier espacio en blanco en el inicio de la siguiente línea no tienen ningún efecto sobre los valores esenciales o elementos. El resto de la discusión del análisis sintáctico elemento clave y (cuando la carga) asumirá todos los caracteres que constituyen el elemento clave y aparecen en una sola línea natural después de caracteres de continuación de línea se han eliminado. Tenga en cuenta que no es suficiente solamente para examinar el carácter anterior una secuencia de terminación de línea para decidir si se escapó del terminador de línea; tiene que haber un número impar de barras invertidas contiguas para el terminador de línea que se escapó. Dado que la entrada se procesa de izquierda a derecha,

La clave contiene todos los caracteres en la línea de salida con el primer carácter de espacio no blanca y hasta, pero no incluyendo, la primera sin escapar '=', ':', o blanco carácter de espacio que no sea un terminador de línea. Todos estos caracteres de terminación clave pueden incluirse en la tecla de escape con una barra invertida anterior; por ejemplo,

: =

sería la clave de dos caracteres “: =”. personajes terminador de línea se pueden incluir el uso de \ r \ n secuencias de escape. Cualquier espacio en blanco después de la tecla se omite; si el primer carácter de espacio no blanca después de la clave es '=' o ':', entonces se ignora y cualquier carácter de espacio en blanco después de que también se omitirán. Todos los restantes caracteres en la parte de línea se conviertan de la cadena de elementos asociados; Si no hay caracteres restantes, el elemento es la cadena vacía “”. Una vez identificadas las secuencias de caracteres primas que constituyen el elemento clave y, el procesamiento de escape se realiza como se ha descrito anteriormente.

Como un ejemplo, cada uno de los siguientes tres líneas especifica la clave “verdad” y el valor del elemento asociado “belleza”:
Verdad = Beauty
Verdad: Beauty
Verdad: Beauty

Como otro ejemplo, las tres líneas siguientes especifican una sola propiedad: frutos manzana, plátano, pera,
melón, sandía,
kiwi, mango

La clave es “frutos” y el elemento asociado es: “manzana, plátano, pera, melón, sandía, kiwi, mango”
Tenga en cuenta que aparece un espacio antes de cada \ de manera que un espacio aparecerá después de cada coma en el resultado final; la, terminador de línea, y que conduce el espacio en blanco en la línea de continuación son meramente desecha y no se sustituyen por uno o más de otros caracteres.
Como un tercer ejemplo, la línea:
quesos

Especifica que la clave es “quesos” y el elemento asociado es la cadena vacía “”.
Personajes de claves y elementos pueden ser representados en las secuencias de escape similares a los utilizados para caracteres y literales de cadena (ver secciones 3.3 y 3.10.6 de la especificación Java ™ Language). Las diferencias con respecto a las secuencias de escape de caracteres Unicode y se escapa utiliza para caracteres y cadenas son:
escapes • Octal no se reconocen.
• La secuencia de caracteres \ b no representa un carácter de retroceso.
• El método no trata a una barra invertida, antes de un carácter de escape no válida como un error; la barra invertida se deja caer en silencio. Por ejemplo, en una serie Java la secuencia “\ z” causaría un error de tiempo de compilación. Por el contrario, este método gotas silenciosamente la barra invertida. Por lo tanto, este método trata la secuencia de dos caracteres “\ b” como equivalente a la solo carácter 'b'.
• Escapes no son necesarios para comillas simples y dobles; sin embargo, por la regla anterior, caracteres de comillas simples y dobles precedidos por una barra invertida todavía producen caracteres individuales y dobles cita, respectivamente.
• Sólo un único carácter 'u' se permite en una secuencia de escape Unicode.

La corriente especificada permanece abierta después de que devuelve este método.
Parámetros: lector de los stream.Throws de caracteres de entrada: IOException - si se ha producido un error al leer desde la entrada stream.IllegalArgumentException - si un escape de Unicode malformación aparece en la input.Since: 1.6

Publicados 533 artículos originales · ganado elogios 2 · Vistas 2693

Supongo que te gusta

Origin blog.csdn.net/m0_37681589/article/details/96186326
Recomendado
Clasificación