1 package net.sourceforge.pmd.util;
2
3 import java.io.BufferedWriter;
4 import java.io.Closeable;
5 import java.io.FileWriter;
6 import java.io.IOException;
7 import java.io.OutputStreamWriter;
8 import java.io.Writer;
9
10
11
12
13
14 public class IOUtil {
15
16 private IOUtil() {}
17
18
19
20
21
22
23
24 public static void closeQuietly(Closeable closeable) {
25 if (closeable == null) return;
26 try {
27 closeable.close();
28 } catch (IOException ex) {
29
30 }
31 }
32
33 public static Writer createWriter() {
34 return new OutputStreamWriter(System.out);
35 }
36
37 public static Writer createWriter(String reportFile) {
38 try {
39 return StringUtil.isEmpty(reportFile) ? createWriter() : new BufferedWriter(new FileWriter(reportFile));
40 } catch (IOException e) {
41 throw new IllegalArgumentException(e);
42 }
43 }
44 }