我最近编写了一个作为 Java 应用程序运行的 Web 服务(可能不是最好的主意,但我对 Java 的了解比 PHP 或英语等其他语言更流利:p)。 Java 应用程序只是将 JSON 数据输出到 System.out。
然后我编写了一个使用 Java 应用程序的小型 PHP 脚本。
这是我的 PHP 脚本:
ob_start('ob_gzhandler');
header("Content-Type: application/json; charset=UTF-8");
passthru("java -jar webservice.jar ");
问题是每个特殊字符(如“é”)都会输出为“??”
知道我可以尝试解决该编码问题吗?
谢谢
编辑:当我在 shell 中运行 java -jar webservice.jar
时,我没有编码问题
最佳答案
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
听起来您需要确保正确处理双字节字符:)
有关编码的更多信息:http://illegalargumentexception.blogspot.com/2009/05/java-rough-guide-to-character-encoding.html
关于java - PHP 和 Java 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10303956/