Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7168896
  • 博文数量: 655
  • 博客积分: 10264
  • 博客等级: 上将
  • 技术积分: 8278
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-04 17:47
个人简介

ABAP顾问

文章分类

全部博文(655)

文章存档

2017年(2)

2014年(8)

2013年(3)

2012年(2)

2011年(18)

2010年(102)

2009年(137)

2008年(274)

2007年(134)

分类:

2009-03-06 16:42:05

UNICODE系统中使用DATASET,如果是文本模式(IN TEXT MODE),则会要求编码方式(ENCODING),下面的例子说明了如何生成ANSI的文本文件或者UNICODE(UTF-8)的文本文件
 
REPORT  z_barry_test.
DATA:BEGIN OF itab OCCURS 0 ,
       matnr LIKE makt-matnr ,
       maktx LIKE makt-maktx ,
     END OF itab.
DATA:dname(120) TYPE c.
 
START-OF-SELECTION.
 
  SELECT matnr maktx INTO TABLE itab FROM makt
    UP TO 20 ROWS
    WHERE spras = '1'.
 
  dname = '/usr/sap/TZK/DVEBMGS00/work/test1.txt'.
  OPEN DATASET dname FOR OUTPUT IN TEXT MODE ENCODING UTF-8. "UTF-8格式
  IF sy-subrc NE 0. EXIT. ENDIF.
  LOOP AT itab.
    TRANSFER itab TO dname.
  ENDLOOP.
  CLOSE DATASET dname.
 
  dname = '/usr/sap/TZK/DVEBMGS00/work/test2.txt'.
  OPEN DATASET dname FOR OUTPUT IN TEXT MODE ENCODING NON-UNICODE. "ANSI格式
  IF sy-subrc NE 0. EXIT. ENDIF.
  LOOP AT itab.
    TRANSFER itab TO dname.
  ENDLOOP.
  CLOSE DATASET dname.
 
注:如果使用ENCODING DEFAULT,则在UNICODE系统为UTF-8,在非UNICODE系统为ANSI
阅读(7194) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~