如何使owa_sylk使用像ANSI这样的特殊编码生成输出?

时间:2013-03-06 11:44:22

标签: oracle excel plsql

我想知道是否可以告诉owa_sylk使用特殊编码生成Excel文件(输出)。我的汉字有些问题。

我们可以用其他方式解决这个问题吗?例如,在创建输出后转换编码?

由于

2 个答案:

答案 0 :(得分:1)

SYLK是一个值得尊敬的界面,并且是Unicode之前的日期。它也是Microsoft的专有实现。他们没有发布规范。因此,像ORA_SYLK这样的实现基本上是逆向工程的。

无论如何,according to Wikipedia

  

“即使SYLK文件是由支持的应用程序创建的   Unicode(例如Microsoft Excel),SYLK文件将被编码   在当前系统的ANSI代码页中,而不是Unicode。如果   应用程序包含可以用Unicode显示的字符   在当前系统的代码页中没有代码点,它们将是   转换为SYLK文件中的问号('?')。“

因此,ORA_SYLK似乎没有太多可用,因为错误在于SYLK。还有一些其他方法可以将数据导出到Excel;他们或许可以解决你的问题。我在回答另一个问题的最后提供了链接。 Find out more.

答案 1 :(得分:0)

我的一位同事解决了这个问题。我们只需要在owa_sylk主体中使用以下代码来转换编码:

owa_sylk.print_rows改变p(行);在p(转换(行,'ZHS32GB18030','AL32UTF8'));