首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

java调用jython时的中文有关问题,呀

2012-12-17 
java调用jython时的中文问题,急呀test.py代码如下,非常简单# -*- coding: utf-8 -*-s 中文print sjava

java调用jython时的中文问题,急呀
test.py代码如下,非常简单
# -*- coding: utf-8 -*-
s = "中文"
print s

java代码如下,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编码的。
[解决办法]
jython中文问题我已经放弃了,jython根本处理不了中文,后者能,但是可能比较复杂,这个等待高手点解一下,我觉得如果你要用就用jruby吧
[解决办法]
中文一直都是一个问题
[解决办法]
哪位高人帮我解答一下呀,急死我了
[解决办法]
可能是文件编码文题吧


$ cat test.py 
# -*- coding: utf-8 -*-
s = "中文"
print s
$ cat ExePythonFile.java 

import org.python.util.PythonInterpreter;

public class ExePythonFile {
    public static void main(String[] args) {
        PythonInterpreter interp = new PythonInterpreter();

        interp.execfile("test.py");
    }
}
$
$
$ java -cp /opt/jython2.5/jython.jar:./ ExePythonFile
中文



[解决办法]
在调用python文件的时候,如果我传入的参数是一个数组,该如何为其设值呢
例如:

//<------------------my_utils.py-------------
def adder(a, b):
  return a + b  
//------------------my_utils.py------------->


//<------------------B.java--------------------
import org.python.util.PythonInterpreter;
import org.python.core.*;


public class B {
  public static void main(String args[]) {
  }
public static getPython(String fileName,String methodName,String []types,String []values)
{
PythonInterpreter interp = new PythonInterpreter();
  interp.execfile(fileName);

  PyFunction func = (PyFunction)interp.get(methodName,PyFunction.class);

    //该如何为其参数赋值呢
    //System.out.println("anwser = " + pyobj.toString());
  }

}
}
//------------------B.java-------------------->

[解决办法]
我最近也是为这个中文的问题来烦恼啊!
[解决办法]
在python 中
>>> s=u'优酷拍客'.encode('utf-8')
>>> s
'\xe4\xbc\x98\xe9\x85\xb7\xe6\x8b\x8d\xe5\xae\xa2'

在jython中:
>>> s=u'优酷拍客'.encode('utf-8')
>>> s
'\xc3\x93\xc3\x85\xc2\xbf\xc3\xa1\xc3\x85\xc3\x84\xc2\xbf\xc3\x8d'

求解释,怎么在python和jython中转码输出的却不一样???怎么才能让其输出一样?求高手,困惑啊!
[解决办法]
我也遇到java用用jython时,返回值中文乱码的问题

热点排行