package com.dianping.pigeon.util;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.Map.Entry;
import java.util.Properties;
public class FileUtils {
public static Properties readFile(InputStream is) throws IOException {
Properties properties = new Properties();
BufferedReader br = null;
if (is != null) {
try {
br = new BufferedReader(new InputStreamReader(is, "utf-8"));
String line = null;
while ((line = br.readLine()) != null) {
int idx = line.indexOf("=");
if (idx != -1) {
String key = line.substring(0, idx);
String value = line.substring(idx + 1);
properties.put(key.trim(), value.trim());
}
}
} finally {
if (br != null) {
try {
br.close();
} catch (IOException e) {
}
}
}
}
return properties;
}
public static void writeFile(File file, Properties properties) throws IOException {
if (!file.exists()) {
File dir = file.getParentFile();
if (!dir.exists()) {
dir.mkdirs();
}
}
PrintWriter pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(file), "utf-8"));
for (Entry<Object, Object> entry : properties.entrySet()) {
pw.println(entry.getKey() + "=" + entry.getValue());
}
pw.close();
}
}