[voikko] Bugi Voikon tokens-funktiossa?
Hannu Väisänen
hannu.vaisanen at uef.fi
Fri Jan 8 23:32:24 EET 2016
libvoikko-4.0.1-STAPSHOT.jar
Olen määritellyt
StringBuilder sb = new StringBuilder();
Kutsun Voikon tokens-funktiota näin:
List<Token> list = voikko.tokens (sb.toString());
Jos alustan muuttujan sb esimerkiksi näin:
sb.append ("a b c d");
tokens-funktio toimii, mutta jos luen muuttujaan sb
kokonaisen tiedoston tällä tavalla:
private void fillBuffer (Reader input) throws IOException
{
int len;
sb.setLength (0);
while ((len = input.read (buffer)) > 0) {
sb.append (buffer, 0, len);
}
}
tai tällä tavalla
private void fillBuffer (Reader input) throws IOException
{
BufferedReader r = new BufferedReader (input);
String line;
while ((line = r.readLine()) != null) {
sb.append (line + "\n");
}
}
tokens-funktio toimii satunnaisesti ja jää usein ikuiseen silmukkaan
funktiossa tokensNonNull(String text)
silmukassa while (bytesLen > 0) {...}
Muuttujan bytesLen arvo ei muutu, koska funktio
lib.voikkoNextTokenCstr()
ei löydä tekstistä sanoja.
More information about the voikko
mailing list