关于前端:ABAP-里文件操作涉及到中文字符集的问题和解决方案试读版

9次阅读

共计 682 个字符,预计需要花费 2 分钟才能阅读完成。

咱们在理论我的项目特地是一些系统集成我的项目中,常常遇到须要接管远端发送过去的二进制流,并进行解析的场景。这个二进制流的内容,可能是一些二进制文件,比方 PDF,JPG 等格局的文件,也可能是文本文件。对于文本文件来说,咱们须要将二进制流,从新还原成用户可读的文本。这就是本文要着重探讨的话题。

在开始本步骤的学习之前,请大家务必先实现前置章节的学习:

ABAP 报表中如何以二进制形式上传本地文件

这个前置章节,将文本文件,以二进制的形式上传到 ABAP 服务器上,来模仿一个来自远端的内容提供者(Content Provider) 提供的二进制流,类型为 xstring. 这些二进制流的理论内容,是一些蕴含中文字符的文本,本文咱们的工作就是,把这些二进制流,从新转换回用户可读的文本,而后打印进去。

咱们新建一个文本文件,输出一个汉字 ,文件名另存为 汪 -utf8.txt, encoding 抉择 UTF-8.

这个文件的大小显示为 3 个字节。这是合乎咱们冀望的行为,因为 UTF-8 是 Unicode 的一种实现形式,而一个汉字的 Unicode 值的范畴是 0X4E00 到 0x9FA5,如果采取 UTF-8 编码,须要 3 个字节。

上面咱们将会在 ABAP 代码里,针对蕴含了这个中文字符的文本文件,进行各种操作。

具体介绍请看这篇文章。

总结

在应用 ABAP 进行蕴含到中文字符的文件操作时,首先肯定要明确以后中文字符,是依据哪一个字符集进行编码,而后从 ABAP 数据库表 TCP00 里找到该字符集在 ABAP 零碎中的编号,确保蕴含中文内容的二进制流,同传入的 ABAP Encoding 值相匹配,这样就肯定能失去正确的处理结果。

正文完
 0