Где разместить пользовательские ресурсы?

#java #libgdx #assets

#java #libgdx #ресурсы

Вопрос:

У меня есть несколько пользовательских ресурсов, таких как csv файлы. Куда я должен поместить их, чтобы убедиться, что они будут найдены для каждой сборки / проекта ( Desktop / IOS / Android )? Я уже пробовал android/assets папку, но файл не найден BufferedReader . Должен ли я просто хранить там свои csv-файлы и переходить к этой папке с BufferedReader помощью или это несовместимо между разными проектами? Бонусные баллы за включение правильного способа перехода к правильной карте, я могу посмотреть это, но беспокоюсь о совместимости между проектами.

Я попытался предоставить дескриптор файла LibGDX в качестве параметра для BufferedReader безрезультатно. Он просто не принимает дескриптор файла LibGDX.

 FileHandle handle = Gdx.files.internal("roomsets.csv");

br = new BufferedReader(new FileReader(handle)); //The constructor FileReader(FileHandle) is undefined

br = new BufferedReader(new InputStreamReader(handle).read()); //error: The constructor BufferedReader(int) is undefined

br = new BufferedReader(handle); //The constructor BufferedReader(FileHandle) is undefined
 

Я исправил это следующим образом:

 br = new BufferedReader(handle.reader());
 

Просто любопытно, должно ли это вызвать проблемы на IOS и Android?

Комментарии:

1. если вы еще этого не сделали, убедитесь, что используете файловую систему libgdx для получения дескрипторов ваших файлов, а не создаете дескрипторы для них самостоятельно. Как и в, не создавайте новый файл («your_path.csv»), вместо этого сделайте что-то вроде Gdx.files.internal(«your_path.csv»), а затем получите файл таким образом

2. @clearlyspam23 Я действительно пробовал это, но я не могу заставить BufferedReader или FileReader работать с дескрипторами файлов libgdx.

3. какое сообщение об ошибке вы получаете? может быть, вы можете опубликовать это в вопросе?

4. @clearlyspam23 Он просто не исключает дескрипторы файлов LibGdx в качестве параметра.

5. На самом деле handle.reader(); возвращает свой собственный reader, чтобы вы могли сделать br = handle.reader(buffersize);