1

我想知道是否可以告诉 owa_sylk 生成具有特殊编码的 Excel 文件(输出)。我对中文字符有一些问题。

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

谢谢

4

2 回答 2

1

SYLK 是一个古老的界面,早于 Unicode。它也是一个专有的 Microsoft 实现。他们不发布规范。所以像 ORA_SYLK 这样的实现基本上是逆向工程的。

无论如何,根据维基百科

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

因此,ORA_SYLK 似乎无能为力,因为问题在于 SYLK。还有其他一些将数据导出到 Excel 的方法;他们也许能够解决您的问题。我在另一个问题的答案末尾提供了链接。 了解更多。

于 2013-03-06T12:10:36.833 回答
0

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

owa_sylk.print_rows 更改 p( 行 ); 在 p(convert(line, 'ZHS32GB18030','AL32UTF8'));

于 2013-03-12T13:03:26.510 回答