Java LanguageClase de propiedades


Introducción

El objeto de propiedades contiene un par de clave y valor tanto como una cadena. La clase java.util.Properties es la subclase de Hashtable.

Se puede utilizar para obtener el valor de la propiedad en función de la clave de propiedad. La clase de propiedades proporciona métodos para obtener datos del archivo de propiedades y almacenar datos en el archivo de propiedades. Por otra parte, se puede utilizar para obtener propiedades del sistema.

Ventaja del archivo de propiedades

No se requiere la compilación, si la información se cambia desde el archivo de propiedades: si se cambia alguna información de

Sintaxis

  • En un archivo de propiedades:
  • clave = valor
  • #comentario

Observaciones

Un objeto de propiedades es un mapa cuyas claves y valores son cadenas por convención. Aunque los métodos de Map se pueden usar para acceder a los datos, los métodos getProperty , setProperty y stringPropertyNames más seguros para el uso de tipos se usan en su lugar.

Las propiedades se almacenan con frecuencia en archivos de propiedades Java, que son archivos de texto simples. Su formato está documentado a fondo en el método Properties.load . En resumen:

  • Cada par clave / valor es una línea de texto con espacios en blanco, es igual a ( = ), o colon ( : ) entre la llave y el valor. Los iguales o dos puntos pueden tener cualquier cantidad de espacios en blanco antes y después, que se ignora.
  • Los espacios en blanco iniciales siempre se ignoran, los espacios en blanco finales se incluyen siempre.
  • Se puede usar una barra invertida para escapar de cualquier carácter (excepto en minúsculas u ).
  • Una barra invertida al final de la línea indica que la siguiente línea es una continuación de la línea actual. Sin embargo, al igual que con todas las líneas, los espacios en blanco iniciales en la línea de continuación se ignoran.
  • Al igual que en el código fuente de Java, \u seguido de cuatro dígitos hexadecimales representa un carácter UTF-16.

La mayoría de los marcos, incluidas las instalaciones propias de Java SE como java.util.ResourceBundle, cargan archivos de propiedades como InputStreams. Al cargar un archivo de propiedades desde un InputStream, ese archivo solo puede contener caracteres ISO 8859-1 (es decir, caracteres en el rango de 0 a 255). Cualquier otro personaje debe ser representado como \u escapa. Sin embargo, puede escribir un archivo de texto en cualquier codificación y usar la herramienta native2ascii (que viene con cada JDK) para hacer ese escape por usted.

Si va a cargar un archivo de propiedades con su propio código, que puede ser en cualquier codificación, siempre y cuando se crea un lector (como un InputStreamReader ) basado en el correspondiente conjunto de caracteres . Luego puede cargar el archivo usando load (Reader) en lugar del método de carga heredado (InputStream).

También puede almacenar propiedades en un archivo XML simple, lo que permite que el propio archivo defina la codificación. Dicho archivo se puede cargar con el método loadFromXML . La DTD que describe la estructura de dichos archivos XML se encuentra en http://java.sun.com/dtd/properties.dtd .

Clase de propiedades Ejemplos relacionados