Почему моя клавиатура Java для устройств Android не распознает слова, которые я говорю? - PullRequest
0 голосов
/ 13 января 2019

Я разрабатываю клавиатуру для устройств Android, чтобы распознавать определенные слова. В настоящее время у меня есть клавиатура от Envato Tuts +. После разработки рабочей клавиатуры для Android я создал новый класс под названием WordRecognition.java. Он содержит весь код, необходимый для распознавания слов этой клавиатурой. После тестирования этого на моем Android-устройстве мне стало интересно, почему я не смог заставить его работать. Я перепробовал все возможные способы устранения неполадок, но ни один из них не исправил это. Мой код включает в себя несколько методов, и мне было интересно, если кто-то может сказать мне, что с ним не так. Это мой следующий код:

package jt.thinktwice.com.thinktwice;



import android.util.Log;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

import static android.content.ContentValues.TAG;

public class WordRecognition {
    public static void main(String[] args) throws FileNotFoundException{
        // Read the file using whitespace as a delimiter (default)
// so that the input will be split into words
        Scanner file = new Scanner(new File("InvalidWord.txt"));

        Set<String> InvalidWord = new HashSet<>();
// For each word in the input
        while (file.hasNext()) {
            // Convert the word to lower case, trim it and insert into the set
            // In this step, you will probably want to remove punctuation marks
            InvalidWord.add(file.next().trim().toLowerCase());
        }

        System.out.println("Enter a word to search for: ");
        Scanner input = new Scanner(System.in);
// Also convert the input to lowercase
        String search = input.next().toLowerCase();

// Check if the set contains the search string
        if (InvalidWord.contains(search)) {
            System.out.println("Invalid Word Said!");
            Log.i(TAG, "main: Invalid Word Said ");

        } else System.out.println("Valid Word Said!");
            Log.i(TAG, "main: Invalid Word Said ");
    }

В приведенном выше коде у меня есть Java Scanner поиск слов в моем файле InvalidWord.txt. У меня есть несколько разных сценариев для моей проблемы, но я думаю, что основной из них заключается в том, что мой файл InvalidWord.txt находится не в том месте. Он находится в папке «Активы». Если это не проблема, может кто-нибудь пересмотреть мой код, чтобы это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...