test.py代码如下,非常简单
# -*- coding: utf-8 -*-
s = "中文"
print sjava代码如下,ExePythonFile.java
import org.python.util.PythonInterpreter;
public class ExePythonFile {
public static void main(String[] args) {
   PythonInterpreter interp = new PythonInterpreter();
   interp.execfile("D:/eclipse_platform_workspace/java/test.py");
}
}
运行ExePythonFile 时输出是乱码“涓枃”,请教给我应该怎么弄才能正确输入中文,py文件中我已经写了utf-8编码的。

解决方案 »

  1.   

    原因:控制台的Codepage是cp936。
    试试
    chcp 65001
    最后恢复
    chcp 936
      

  2.   

    不是控制台的原因吧,上述代码运行环境是eclipse,我在eclipse上直接运行(eclipse上安装的pydev插件)test.py能够在控制台上正常输出“中文”,而通过java代码再调用test.py就不对了。应该java和python之间交互有什么字符编码问题,急死我了,请高手指导一下
      

  3.   

    那就不知道了。我在linux下一切正常。
    改成gbk?