【问题标题】:MeCab path parameters do not accept whitespace on WindowsMeCab 路径参数在 Windows 上不接受空格
【发布时间】:2012-04-24 14:16:07
【问题描述】:

我已成功使用 MeCab Java 从我的 Java 代码中调用 Mecab。 我使用下面的语句来初始化标注器:

tagger = new Tagger("--node-format=%f[7]\\t --unk-format=%m\\t --eos-format=\\n --rcfile=" + filePath + "/mecabrc" + " --dicdir=" + filePath + "/ipadic");

现在我面临一个问题,filePath 可能实际上包含空格字符,例如:c:\folder name\。当我尝试使用这样的路径时,我从 Mecab 收到错误消息:

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

这意味着 Mecab 没有正确识别空格。

知道如何指示 Mecab 接受 Windows 文件路径中的白景吗?

【问题讨论】:

    标签: java mecab


    【解决方案1】:

    我阅读了 MeCab 源代码,如果不编辑源代码并编译自定义版本,则无法让 MeCab 接受路径中的空格。您至少有三种解决方法:

    1. 将目录重命名为不带空格的名称
    2. 尽可能使用相对路径
    3. 使用 windows 8.3 文件名

    Here is a link to showing more information on how to get 8.3 filenames in java.

    【讨论】:

      猜你喜欢
      • 2016-05-03
      • 2016-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-18
      • 2013-05-23
      • 1970-01-01
      相关资源
      最近更新 更多