2010-06-23 3 views
1

У меня есть несколько файлов, хранящихся в папке project/res/values, есть ли способ открыть и прочитать эти файлы из моего приложения для Android? Каждый файл содержит текстовую информацию об одном уровне моей игры. Я очень ценю любую помощь.Есть ли способ доступа к файлу, хранящемуся в папке проекта?

ответ

0

Я не нахожу, что мне нужно здесь :
http://developer.android.com/guide/topics/data/data-storage.html
Если вы хотите сохранить статический файл в своем приложении во время компиляции, сохраните файл в каталоге проекта res/raw /. Вы можете открыть его с помощью openRawResource(), передав R.raw. идентификатор ресурса. Этот метод возвращает InputStream, который вы можете использовать для чтения файла (но вы не можете записать его в исходный файл). "
К сожалению, если мой вопрос не ясно.
И большое спасибо Радек Суский для некоторой дополнительной информации и примеров. Я понимаю, что.

1

Насколько я знаю, вы можете либо получить доступ к файлам в каталоге «файлы» из каталога проектов, либо с SD-карты. Но никаких других файлов

EDIT

FileInputStream in = null; 
InputStreamReader reader = null; 
try { 
    char[] inputBuffer = new char[256]; 
    in = openFileInput("myfile.txt"); 
    reader = new InputStreamReader(in); 
    reader.read(inputBuffer); 
    String myText = new String(inputBuffer); 
} catch (Exception e) {;} 
finally { 
    try { 
     if (reader != null)reader.close(); 
    } catch (IOException e) {; } 
    try { 
     if (in != null)in.close(); 
    } catch (IOException e) {;} 
} 

Тогда ваш файл будет расположен в: /data/data/yourpackage/files/myfile.txt

+0

Так я могу создать каталог„файлы“в моем проекте и получить доступ к файлам хранящийся там из моего приложения? Хорошо, это то, что мне нужно. Но какой путь к этому каталогу? Я пытаюсь открыть файл с таким путем: «/files/1.lv», но это не работает. – Kubeczek

+0

AFIR, вам даже не нужно создавать этот каталог. См. Мое редактирование –

+0

Ваш пример очень поучительный, спасибо за это! Но, похоже, у нас есть небольшое недоразумение. Мне нужно было создать несколько файлов со статическими -read-only 'для данных карты. Я имею в виду: вместо написать собственный редактор карт. Я решил создать текстовые файлы, где каждый символ представляет один объект на карте в игре. Поэтому я создаю несколько файлов с такими данными, и теперь мне нужно их распространять с помощью файла .apk для игры, чтобы я мог легко читать эти файлы во время создания карты. Я никогда не хочу редактировать или создавать эти файлы во время моего приложения, я создаю их только один раз перед компиляцией программы. – Kubeczek

Смежные вопросы