Я работаю над школьным проектом, в котором мне нужно инициализировать состояние моей программы с помощью txt-файла.Я никогда по-настоящему не работал с чтением файлов, поэтому я использовал учебник здесь , чтобы сгенерировать путь к папке ресурсов, используемой в проекте.
ClassLoader classLoader = getClass().getClassLoader();
File file = new File(classLoader.getResource("savedState.txt").toURI());
BufferedReader br = new BufferedReader(new FileReader(file));
Это прекрасно работает!Проблема приходит, когда я пытаюсь записать обратно в файл.Я пытался использовать подобный подход, и это не похоже на работу.Файл остается пустым, когда я использую этот код.
ClassLoader classLoader = getClass().getClassLoader();
File file = new File(classLoader.getResource("savedState.txt").toURI());
//File file = new File("/actual file path/savedState.txt");
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
Самое страшное, что он работает нормально, когда я использую фактический путь к файлу (третья строка вместо первых двух).Я не уверен, как заставить это работать!
Наверное, мне следует добавить то, что пишется (возможно, я делаю это неправильно).Это то, над чем он работает, токены
for (int i=0;i<tokens.size();i++)
bw.write(tokens.get(i)+',');
bw.close();
представляют собой ArrayList, тип String