@slavenski
Android developer

Как считать строки в массив из файла в Android Studio?

Пытаюсь реализовать поиск слова по словарю. Самый примитивный метод, т.е. просто по строчке бежим и проверяем равенство. Проблема в том, что не могу найти документации как это сделать в Android Studio. Скачал словарб 1Мб 93к слов, на русском. Но Android Studio не компилит это пишет, что не распазнает этот файл. Понятия не имею как это реализовать. Подскажите, пожалуйста.
  • Вопрос задан
  • 1301 просмотр
Решения вопроса 1
thelongrunsmoke
@thelongrunsmoke
Программист
Всё очень просто, файл со словарём размещается в ассетсах. Читаем, к примеру, вот так:
public class RestServiceTestHelper {

    private static String convertStreamToString(InputStream is) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        StringBuilder sb = new StringBuilder();
        String line;
        while ((line = reader.readLine()) != null) {
            sb.append(line).append("\n");
        }
        reader.close();
        return sb.toString();
    }

    static String getStringFromFile(Context context, String filePath) throws Exception {
        final InputStream stream = context.getResources().getAssets().open(filePath);
        String ret = convertStreamToString(stream);
        stream.close();
        return ret;
    }
}

Если словарь большой, то лучше его разбить на части. Если нужен быстрый поиск - сделать из него БД и использовать её.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы