org.testng.reporters.Files Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of testng Show documentation
Show all versions of testng Show documentation
A testing framework for the JVM
package org.testng.reporters;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.Reader;
import java.io.StringWriter;
import java.io.Writer;
import java.nio.charset.StandardCharsets;
public class Files {
public static String readFile(File f) throws IOException {
try (InputStream is = new FileInputStream(f)) {
return readFile(is);
}
}
public static String readFile(InputStream is) throws IOException {
StringBuilder result = new StringBuilder();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line = br.readLine();
while (line != null) {
result.append(line + "\n");
line = br.readLine();
}
return result.toString();
}
public static void writeFile(String string, File f) throws IOException {
f.getParentFile().mkdirs();
try (FileWriter fw = new FileWriter(f);
BufferedWriter bw = new BufferedWriter(fw)) {
bw.write(string);
}
}
public static void copyFile(InputStream from, File to) throws IOException {
if (! to.getParentFile().exists()) {
to.getParentFile().mkdirs();
}
try (OutputStream os = new FileOutputStream(to)) {
byte[] buffer = new byte[65536];
int count = from.read(buffer);
while (count > 0) {
os.write(buffer, 0, count);
count = from.read(buffer);
}
}
}
public static String streamToString(InputStream is) throws IOException {
if (is != null) {
Writer writer = new StringWriter();
char[] buffer = new char[1024];
try (Reader reader = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8))) {
int n;
while ((n = reader.read(buffer)) != -1) {
writer.write(buffer, 0, n);
}
}
return writer.toString();
} else {
return "";
}
}
}