打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ABAP 里文件操作涉及到中文字符集的问题和解决方案试读版
userphoto

2022.08.14 上海

关注

我们在实际项目特别是一些系统集成项目中,经常遇到需要接收远端发送过来的二进制流,并进行解析的场景。这个二进制流的内容,可能是一些二进制文件,比如 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 值相匹配,这样就一定能得到正确的处理结果。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
存文本文件及其字符编码
电子取证前沿:对文本逐字节进行中文查找的探讨
web程序乱码深入分析【基础原理篇】
文本文件中出现的奇怪现象解析
流文件与文本文件的区别
编程基础之编码与解码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服