zoukankan      html  css  js  c++  java
  • 【原创】ABAP根据文件路径获取文件所在目录(续)

      在上一篇文章《ABAP根据文件路径获取文件所在目录》中,我主要的思路是采用 “SPLIT dobj AT sep INTO TABLE result_tab” 句型将文件全路径按分隔符“”拆分到一个内表中,然后在遍历内表的过程中将行项目逐个连接起来,直到遍历至最后一个行项目时跳过(其作用相当于退出循环)。

      昨天发现 SAP 系统中其实已经有了类似功能的实现:调用功能模块 SO_SPLIT_FILE_AND_PATH ,同时传入文件的全路径 FULL_NAME ,便可返回文件名 STRIPPED_NAME 和文件所在目录 FILE_PATH 。通过 SE37 查看其实现代码,发现我的思路和 SAP 的实现是一致的,如下图所示便是 SO_SPLIT_FILE_AND_PATH 实现代码的关键部分:

     

       而不一样的地方在于,在其实现代码的一开始 SAP 就调用了类 CL_GUI_FRONTEND_SERVICES 中的静态成员函数 GET_FILE_SEPARATOR ,获取当前用户使用的操作系统的文件分隔符并赋值给变量 l_delimiter ,这是为了应对 Windows 、Unix 和 Mac 三大操作系统使用各自独特的文件分隔符,另外还要考虑到用户使用的是哪一种 SAP GUI —— SAPGUI for HTML 、SAPGUI for Java 或 SAPGUI for Windows 。而我使用的是 Windows 系统上的 SAPGUI for Windows ,解决了当时的问题后就没再考虑那么多……图样图森破啊!

      建议读者碰到实现文章标题所示的需求的时候,还是调用SAP的功能模块 SO_SPLIT_FILE_AND_PATH 吧!

    【原创博文,欢迎大家批评指正!如需转载请注明出处 http://www.cnblogs.com/shelwin/p/3257115.html 】

  • 相关阅读:
    存储器类型区分
    语言基础(25):容器与算法
    X11-forwarding
    语言基础(24):句柄类
    Markdown(2):流程图
    剑指offer-树的子结构
    剑指offer-判断链表是否有环
    剑指offer-求链表的中间结点
    剑指offer-合并两个排序的链表
    剑指offer-反转链表
  • 原文地址:https://www.cnblogs.com/shelwin/p/3257115.html
Copyright © 2011-2022 走看看