首先,我确实在这个论坛上搜索了答案。从我尝试过的搜索中,我仍然感到震惊,因此提出了这个问题。所以请多多包涵。我想在我的 java 应用程序中访问来自开源的外部 C++ DLL 开源是http://phtranslator.sourceforge.net/ - 它提供 DLL 将英文字符串音译成印度语 unicode 字符串。
这是我的代码: public class IndicTranslator {
public interface PhTranslator extends Library {
PhTranslator INSTANCE = (PhTranslator)
Native.loadLibrary("dist/lib/PhTranslateLib.dll", PhTranslator.class);
Pointer GetTamilTranslator();
int Translate(Pointer translator, String szEnglish, WString szLang, int szLen);
}
public static void main(String[] args) {
PhTranslator indicTranslator = PhTranslator.INSTANCE;
WString szLang = null;
int szLen = 128;
Pointer tamilTranslator = indicTranslator.GetTamilTranslator();
indicTranslator.Translate(tamilTranslator, "vaNakkam", szLang, szLen);
System.out.println(szLang+" Length="+szLen);
}
}
上面的代码编译但返回打印 null。任何帮助我做错了什么。我希望它显示“印度字符”