I have successfully used MeCab Java for calling Mecab from my Java code.
I use the following statement to initialize the tagger:
tagger = new Tagger("--node-format=%f[7]\\t --unk-format=%m\\t --eos-format=\\n --rcfile=" + filePath + "/mecabrc" + " --dicdir=" + filePath + "/ipadic");
Now I am facing a problem that filePath might actually contain whitespace characters, for example: c:\folder name\. When I try using such a path, I get an errors from Mecab saying:
java.lang.RuntimeException: C:\src\c\common\mecab\src\main\c\tagger.cpp(151) [load_dictionary_resource(param)] C:\src\c\common\mecab\src\main\c\param.cpp(71) [ifs] no such file or directory: c:/folder
Which means Mecab did not recognize the whitespace correctly.
Any idea how can I direct Mecab to accept the whitescapes in a Windows file path?
I read the MeCab source code and there is no way to get MeCab to accept white space in the path without editing the source and compiling a custom version. You have at least three work-around options:
Here is a link to showing more information on how to get 8.3 filenames in java.