¿Cómo leer/escribir un archivo con propiedades personalizadas en Java utilizando la clase Properties?
Soy capaz de leer/escribir en un archivo con la sintaxis estándar “clave=valor” utilizando la clase “java.util.Properties” con el siguiente código:
Properties properties = new Properties();
properties.load(new InputStreamReader(fileInputStream, Charset.forName("UTF-8")));
properties.setProperty(clave, valor);
Sin embargo, me gustaría leer/editar el archivo “user.js” del perfil de Firefox, que contiene una sintaxis de propiedades personalizadas:
PREFIX CLAVE VALOR
user_pref("browser.tabs.warnOnClose", true);
user_pref("browser.tabs.warnOnCloseOtherTabs", true);
user_pref("browser.laterrun.bookkeeping.profileCreationTime", 1638899590);
user_pref("browser.laterrun.bookkeeping.sessionCount", 3);
user_pref("dom.push.userAgentID", "dd6709b4XXXXXX517f7bf9e78");
Observa que cada propiedad contiene un prefijo estándar (por ejemplo, “user_pref(“), una clave (por ejemplo, “browser.tabs.warnOnClose”) y un valor (por ejemplo, true, 1638899590, “dd6709b4XXXXXX517f7bf9e78”).
Supongo que esto se puede lograr con expresiones regulares (RegEx), pero preferiría resolverlo de una manera más sencilla si es posible.
¿Es posible lograr esto directamente con la clase “java.util.Properties” o debo utilizar expresiones regulares?
Gracias
davy.ai
Desafortunadamente, no es posible utilizar directamente la clase
Java Properties
para leer/editar el archivouser.js
del perfil deFirefox
ya que no sigue la sintaxis estándarclave=valor
. Deberá utilizarRegEx
para analizar el archivo y extraer los valores deseados.Sin embargo, utilizar bibliotecas existentes como
mozilla/PropertiesParser
ojoemccrary/innertube
puede simplificar este proceso y proporcionar un enfoque más estructurado para manejar las propiedades deuser.js
.