final/src/FileManager.java

39 lines
1.5 KiB
Java
Raw Normal View History

2022-06-12 23:22:13 +01:00
//This class allows us to input and output flies useful for
//Inputing levels and making save data.
import java.io.*;
2022-06-03 18:08:59 +01:00
import java.util.Scanner;
// TODO: close scanner etc after use
2022-06-03 18:08:59 +01:00
public class FileManager {
public static void writeFile(String fileLocation, String writeString) throws IOException {
File newFile = new File(fileLocation);
FileWriter fileWriter = new FileWriter(newFile);
fileWriter.write(writeString);
fileWriter.close();
}
// will create file if it doesn't exist
public static String readFile(String fileLocation) throws IOException {
File newFile = new File(fileLocation);
if (newFile.createNewFile()) {
return null;
} else {
Scanner fileReader = new Scanner(newFile);
// using the delimiter \\Z reads the entire file at once
return fileReader.useDelimiter("\\Z").next();
}
}
public static Object readObjectFromFile(String fileLocation, String allowedObject) throws IOException, ClassNotFoundException {
FileInputStream fileStream = new FileInputStream(fileLocation);
SafeObjectInputStream objectStream = new SafeObjectInputStream(fileStream, allowedObject);
return objectStream.readObject();
}
public static void writeObjectToFile(String fileLocation, Object o) throws IOException {
FileOutputStream fileStream = new FileOutputStream(fileLocation);
ObjectOutputStream objectStream = new ObjectOutputStream(fileStream);
objectStream.writeObject(o);
}
2022-06-03 18:08:59 +01:00
}