/*
* Copyright 2005-2015 by BerryWorks Software, LLC. All rights reserved.
*
* This file is part of EDIReader. You may obtain a license for its use directly from
* BerryWorks Software, and you may also choose to use this software under the terms of the
* GPL version 3. Other products in the EDIReader software suite are available only by licensing
* with BerryWorks. Only those files bearing the GPL statement below are available under the GPL.
*
* EDIReader is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of
* the License, or (at your option) any later version.
*
* EDIReader is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
* even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with EDIReader. If not,
* see <http://www.gnu.org/licenses/>.
*/
package com.berryworks.edireader.util;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import java.nio.ByteBuffer;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
public class FileUtil {
public static String fileToString(String filename) throws IOException {
byte[] encoded = Files.readAllBytes(Paths.get(filename));
return StandardCharsets.UTF_8.decode(ByteBuffer.wrap(encoded)).toString();
}
public static void stringToFile(String data, String filename) throws IOException {
try (Writer writer = new FileWriter(filename)) {
writer.write(data);
}
}
public static byte[] fileToByteArray(File file) throws IOException {
return Files.readAllBytes(Paths.get(file.getPath()));
}
public static File locateDirectory(String directoryName) {
File directory = new File(directoryName);
if (directory.exists() && directory.isDirectory()) {
return directory;
}
directory = new File("../" + directoryName);
if (directory.exists() && directory.isDirectory()) {
return directory;
}
throw new RuntimeException("Cannot locate directory " + directoryName);
}
}