首先你用ORACLE的XDK,是用XSQL吧,用不着在XSQL中,你只要把字符集改一下就好了! 例如这个例子<?xml version="1.0" encoding="GB2312"?> <?xml-stylesheet type="text/xsl" href="simple.xsl"?> <xsql:query connection="webreport" xmlns:xsql="urn:oracle-xsql"> select DISTINCT Substr(name, 1, 4) as TABLE_SP, DECODE( Substr(name, 1, 4) ,'C2EP','工程模块', 'C2CM','合同模块', 'C2FA','资产模块', 'C2MT','物资模块', 'C2FN','融资模块', 'C2HS','财务接口模块', 'C2PA','项目模块', '其他') as project_name from sys.obj$ t where t.owner# = (select user# from sys.user$ where name ='APPS') And t.type# in (2,4) and Substr(name, 1, 2) = 'C2' </xsql:query>
很可能在文件的开头两个字节里被写入了 fffe 标记。
而这个应该属于"UTF-16LE"编码。"UTF-16"编码在文件开头的标记是:feff(两个字节)或者0000feff(四个字节)。
例如这个例子<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type="text/xsl" href="simple.xsl"?>
<xsql:query connection="webreport" xmlns:xsql="urn:oracle-xsql">
select DISTINCT Substr(name, 1, 4) as TABLE_SP,
DECODE( Substr(name, 1, 4) ,'C2EP','工程模块',
'C2CM','合同模块',
'C2FA','资产模块',
'C2MT','物资模块',
'C2FN','融资模块',
'C2HS','财务接口模块',
'C2PA','项目模块',
'其他') as project_name
from sys.obj$ t
where t.owner# = (select user# from sys.user$ where name ='APPS')
And t.type# in (2,4) and Substr(name, 1, 2) = 'C2'
</xsql:query>
JDOM也有类似XSQL的东西。