久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么將xstring中多余的00去掉

151次閱讀
沒有評論

共計 1322 個字符,預計需要花費 4 分鐘才能閱讀完成。

這篇文章主要介紹“怎么將 xstring 中多余的 00 去掉”,在日常操作中,相信很多人在怎么將 xstring 中多余的 00 去掉問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么將 xstring 中多余的 00 去掉”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學習吧!

現在的 sap 系統都是 unicode 的,所以每一個字符都會用雙字節表示。

如字符 S,對應的 ascii 碼為 53,但在 sap 系統中 debug 時你看到的是 5300.

如果我們一開始拿到的是 53000A00 這個 xstring 值,怎么才能將其轉成 530A 呢。(直接替換 0 顯然是不合適的)

可通過以下代碼實現:

 DATA : str TYPE string VALUE  S ,
 xstr TYPE xstring,
 lt_binary TYPE TABLE OF solix.
 DATA : lo_conv TYPE REF TO cl_abap_conv_x2x_ce.
 xstr =  53000A00 .
 WRITE :/  unicode 十六進制值: ,xstr.
**  二進制由 4103 轉 4110
 TRY.
 CALL METHOD cl_abap_conv_x2x_ce= create
 EXPORTING
 in_encoding =  4103   uft-16le, 雙字節,存在字節浪費
 out_encoding =  4110   uft-8,自壓縮格式,東亞字雙字節,歐美單字節
 input = xstr
 RECEIVING
 conv = lo_conv.
 CATCH cx_parameter_invalid_type .
 CATCH cx_parameter_invalid_range .
 CATCH cx_sy_codepage_converter_init .
 ENDTRY.
 lo_conv- convert_c( ).
 CLEAR xstr.
 xstr = lo_conv- get_out_buffer( ).
 WRITE : /  uft- 8 十六進制值: ,xstr.

執行結果:

unicode 十六進制值: 53000A00

uft- 8 十六進制值: 530A

———————————————————————-

ps:string 轉 xstring,可使用函數 SCMS_STRING_TO_XSTRING。

*** 字符串轉 hex 字符串,encoding 系統默認 4110
* CALL FUNCTION  SCMS_STRING_TO_XSTRING 
* EXPORTING
* text = str
* encoding =  4103 
* IMPORTING
* buffer = xstr
* EXCEPTIONS
* failed = 1
* OTHERS = 2.

到此,關于“怎么將 xstring 中多余的 00 去掉”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注丸趣 TV 網站,丸趣 TV 小編會繼續努力為大家帶來更多實用的文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-26發表,共計1322字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 休宁县| 孟津县| 延边| 白朗县| 抚顺县| 诏安县| 佳木斯市| 鄂尔多斯市| 泸定县| 闵行区| 碌曲县| 东乡县| 聂拉木县| 保靖县| 泸定县| 丰原市| 青阳县| 冕宁县| 成安县| 教育| 蚌埠市| 海安县| 兴化市| 永新县| 舟曲县| 同德县| 个旧市| 宁南县| 韶山市| 赤壁市| 台前县| 靖宇县| 宜兰县| 商南县| 汾西县| 东至县| 青川县| 泌阳县| 昌江| 阳西县| 青龙|