Android доступ к файлу активов - PullRequest
       13

Android доступ к файлу активов

0 голосов
/ 29 сентября 2011

Я хочу получить доступ к текстовому файлу, расположенному под ресурсами, из класса, который будет выполнять некоторую обработку этого файла и вызывается в моей Деятельности. Код, который я использую:

AssetManager assetManager = getAssets();
InputStream instream = assetManager.open("file.txt");

это прекрасно работает, если используется в классе Activity, но как заставить его работать в обычном Java-классе?

Отредактировано

JamesBlack - потому что, если я передам входной поток, следующий код не будет работать

for (int i = 0; i < gestureNumbers.size(); i++) {
   BufferedReader bf = new BufferedReader(new InputStreamReader(instream));
   // possible error here
   while ((line = bf.readLine()) != null) {  ...  }
}

Даже если gestNumbers.size ()> 1, тогда цикл while выполняется только один раз, а после прочтения файла он равен нулю.

Когда следующий код работает, но я не могу открыть файл в обычном Java-классе, он работает в классе активности, и я не хочу иметь слишком много кода в одном классе.

for (int i = 0; i < gestureNumbers.size(); i++) {
   InputStream instream = assetManager.open("BSL_Word_POS.txt");
   BufferedReader bf = new BufferedReader(new InputStreamReader(instream));
   // possible error here
   while ((line = bf.readLine()) != null) { ... }
}

1 Ответ

3 голосов
/ 29 сентября 2011

Вы должны передать контекст этому Java-классу, чтобы получить доступ к папке ресурсов.

...