Я работаю над своего рода журнальным приложением, которое содержит много файлов txt, которые я прочитал из текста (только чтение не пишет). И я немного смущен, я прочитал документация о хранении файлов, но, похоже, не вернула правильный способ хранения файлов txt. Должны ли эти файлы находиться в активах? Возможно ли иметь папки внутри активов? И если да, то как я могу передать эти папки?Хранение файлов txt
-2
A
ответ
0
res/raw будет хорошим местом для их размещения. Если вы разместили текстовый файл с именем «article.txt» в папке с необработанным ресурсом, вы должны начать с размещения файла в InputStream, как это (обратите внимание, что «ctx» - это контекст, который наследует Activity):
InputStream inputStream = ctx.getResources().openRawResource(R.raw.article);
Затем вы включаете InputStream в строку. Это можно сделать примерно по 1000 способов. Вот один из способов:
InputStreamReader inputreader = new InputStreamReader(inputStream);
BufferedReader buffreader = new BufferedReader(inputreader);
String line;
StringBuilder text = new StringBuilder();
try {
while ((line = buffreader.readLine()) != null) {
text.append(line);
text.append('\n');
}
} catch (IOException e) {
return null;
}
String fileContentsStr = text.toString();
Вот полностью рабочий метод (с использованием выше метода преобразования), чтобы включить текстовый файл из исходной папки в строку. Что я получил с этого поста Android read text raw resource file.
public static String readRawTextFile(Context ctx, int resId)
{
InputStream inputStream = ctx.getResources().openRawResource(resId);
InputStreamReader inputreader = new InputStreamReader(inputStream);
BufferedReader buffreader = new BufferedReader(inputreader);
String line;
StringBuilder text = new StringBuilder();
try {
while ((line = buffreader.readLine()) != null) {
text.append(line);
text.append('\n');
}
} catch (IOException e) {
return null;
}
return text.toString();
}
Использования «article.txt» до сих пор, вы могли бы назвать этот метод от деятельности, как так:
readRawTextFile(this, R.raw.article);
Смежные вопросы
- 1. Хранение файлов .txt на Android
- 2. Чтение, разбор и хранение .txt-файлов в тензорах Torch эффективно
- 3. Хранение и извлечение файлов
- 4. Хранение файлов в HashTable
- 5. Azure Хранение: Метаданные файлов
- 6. Хранение многих файлов журнала
- 7. Хранение файлов в памяти
- 8. Android Хранение файлов AV
- 9. хранение файлов на MongoDB
- 10. Хранение файлов весной
- 11. Хранение большого количества файлов
- 12. Хранение данных и файлов
- 13. Хранение временных файлов
- 14. Плоское хранение файлов данных базы данных
- 15. Хранение содержимого файла txt в массиве
- 16. Сравнение файлов TXT
- 17. количество файлов .txt Java
- 18. Сравнение 2 файлов txt
- 19. Прямое обновление txt-файлов
- 20. Переименование файлов .txt навалом
- 21. Powershell - TXT поиск файлов
- 22. Группировка файлов TXT
- 23. SQL Server 2008 - Хранение файлов
- 24. Безопасное хранение файлов в iOS
- 25. IOS безопасное хранение больших файлов
- 26. Хранение файлов для одноразовых загрузок
- 27. Загрузка и хранение файлов php
- 28. Хранение файлов на веб-сервере
- 29. Хранение файлов в Azure SQLdatabase
- 30. WKWebView Постоянное хранение файлов cookie
спасибо за ваш ответ, в чем разница между сырой папкой и папкой активов ? Можно ли добавить к ним иерархию папок? – james
Эта статья должна помочь вам представить структуру проекта для проектов Android https://developer.android.com/tools/projects/index.html. Невозможно добавить подпапки в любую папку res, это включает в себя значение, drawable, raw и другие. Однако вы можете добавлять вложенные папки в активы. Ответ, который я предоставил, касается файлов необработанных ресурсов, но есть способы читать в .txt-файлах из папок активов и подпапок активов. – erversteeg
Да, я знаю спасибо, проблема не в том, чтобы прочитать о том, что лучше для многих файлов txt? сырье? активы? не имеет значения? – james