java:properties:avoid-escaping-characters
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| java:properties:avoid-escaping-characters [2020/08/18 16:51] – created odefta | java:properties:avoid-escaping-characters [2023/07/04 16:36] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Avoid escaping characters in java Properties class ====== | ====== Avoid escaping characters in java Properties class ====== | ||
| + | |||
| + | After calling the **store** method, all the special characters from the key values will be escaped by \ \\ | ||
| + | Ex: instead of :test= we'll have in the properties file \:test\= \\ | ||
| + | To avoid this we need to override the store method: | ||
| + | |||
| + | <code java> | ||
| + | Properties properties = new Properties(){ | ||
| + | @Override | ||
| + | public void store(OutputStream out, String comments) throws IOException { | ||
| + | BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(out, | ||
| + | synchronized (this) { | ||
| + | for (Enumeration e = keys(); e.hasMoreElements(); | ||
| + | String key = (String) e.nextElement(); | ||
| + | String val = (String) get(key); | ||
| + | bufferedWriter.write(key + " | ||
| + | bufferedWriter.newLine(); | ||
| + | } | ||
| + | } | ||
| + | bufferedWriter.flush(); | ||
| + | } | ||
| + | }; | ||
| + | </ | ||
| + | |||
| + | |||
java/properties/avoid-escaping-characters.1597769467.txt.gz · Last modified: (external edit)
