Truncate file name from path

hi friends..
i have file path
/abc/xyz/file.pqr
i want to truncate file.pqr
/ may be any numbers .
plz help

Hi,
Search the string for '/' in loop
eg:-
lv_last_index type i.
lv_last_index = 0.
do
SEARCH file_path FOR '/' starting at lv_last_index.
if sy-subrc <> 0.
   exit.
else.
lv_last_index = SY-FDPOS.
endif.
lv_last_index -
will contain last ocurrence of '/'.....
no ur filepath will be
file_path = file_path+0( lv_last_index ). "..specifies the within the bracket
check if the last char is '/'.. in that case cate lv_last_index = lv_last_index - 1.
Mark helpfull answers & close the thread.
Regards
Manoj

Similar Messages

  • Need to extract only file name from path.........

    Hi All,
    I have a parameter.This calls the function
    "CALL FUNCTION 'F4_FILENAME' to get the file from C drive.
    After selecting the file the path is displayed in the Parameter field.
    My problem is I need to extract only file name from the path.Please advice.
    Example : Prameter  id    C:\folder\file.xls  
    I shd extract only file.xls from the path.Please advice.

    Hi,
    Use the below logic:
    data: begin of itab,
               val    type  char20,
            end of itab.
    SPLIT  l_f_path  AT  '\'  INTO  TABLE itab.
    The last record of the internal table holds the file name.
    describe table itab lines l_f_lines.
    read itab index l_f_lines.
    l_f_filaname = itab-val.
    Hope this helps u.

  • File name from path

    We are converting an application that has a table with a full path text column and want to extract only the file name and wondered how we can accomplish this. The table is named BatchImport and the column is named FilePath varchar(40). An example of a
    row would contain G:\Everyone\Billfiles\AATAX.XLS and we want to extract just AATAX.XLS out of it.  Thanks.

    REVERSE, CHARINDEX and RIGHT will be your friends here:
    DECLARE @table TABLE (value NVARCHAR(MAX))
    INSERT INTO @table (value) VALUES ('G:\Everyone\Billfiles\AATAX.XLS')
    SELECT *, RIGHT(value,CHARINDEX('\',REVERSE(value))-1)
    FROM @table
    Don't forget to mark helpful posts, and answers. It helps others to find relevant posts to the same question.

  • Separating file name from path...

    HI,
    I have a jsp page in which the user selects a file by using
    <INPUT type=file name =fname value="browse">
    I am passing this to the javascript in the same page as:
    var file = document.f1.fname.value;
    What I want to do is strip of the file name and add another filename to it:
    i.e if var file = C:\path\to\folder\myfile.txt
    then I want another variable to have the value:
    var x = C:\path\to\folder\ .
    Which means that I want to remove everything until the first " \ " (from the end)
    is there any way to do this (and that too in javascript)
    Thanks,
    -G.

    why are you using java script? I think all this can be done without java script. If you take the file name which is selected by the user in a String. Then you can very easily change the file name once you have the name of the file which the user selected.

  • File name from a path

    hi ,
    there is a path "c:\abc\abc\abc\abc\abc.doc", i have to get file name from it.
    but i had to write a dynamic code which can get the file name from any given path.

    Smoke me a kipper, I'll be back before breakfast.
    SQL> var extended_filepath varchar2(128)
    SQL> exec :extended_filepath := '/this/is/a/path/to/a/file.txt'
    PL/SQL procedure successfully completed.
    SQL> select instr(:extended_filepath, '/', -1)
      2  from dual
      3  /
    INSTR(:EXTENDED_FILEPATH,'/',-1)
                                  21
    SQL> select substr(:extended_filepath, instr(:extended_filepath, '/', -1) +1)
      2  from dual
      3  /
    SUBSTR(:EXTENDED_FILEPATH,INSTR(:EXTENDED_FILEPATH,'/',-1)+1)
    file.txt
    SQL> Cheers, APC

  • Retrieve file name from full file path

    I am trying to retrieve a file name from a path (ex. c:\temp\tes.txt) using the following code, but it is given me an error of "The method split(String) in the type String is not applicable for the arguments (char).
    {code}
    String filepath = item.getName();
    String[] buf = filepath.split('/');
    String filename = buf[buf.length-1];
    {code}
    I tried to use double quote instead of single quote, but it is not returning anything.
    {code}
    String[] buf = filepath.split("/");
    {code}
    Anyone knows why? Thanks.

    How is this related to JDBC?
    Anyway, is the path separator actually a forward slash? Isn't it a backward slash?
    If you're using Apache Commons FileUpload (which I guess, the 'item.getName()' is recognizeable), then just read their FAQ: [http://commons.apache.org/fileupload/faq.html#whole-path-from-IE].

  • Seperating file name from the path

    Hi,
    im trying to validate the file path and trying to seperate file name from the path.
    for eg.
    if the path is f:\sapfilepath\doc\ext.txt
    need to get f:\sapfilepath\doc  im looking for a dynamic way of doing this.
    your help will be appreciated.
    Regards,
    ravi.

    Hi,
    Use the function module
    SO_SPLIT_FILE_AND_PATH
    Thanks,
    Naren

  • Obtaining file name from the file path given

    hi,
    how to obtain  file name from the file path given

    Hi bharath,
    1. PC_SPLIT_COMPLETE_FILENAME
    2.
    DATA : path LIKE pcfile-path.
    DATA : extension(5) TYPE c.
    path = filename.
    CALL FUNCTION 'PC_SPLIT_COMPLETE_FILENAME'
    EXPORTING
    complete_filename = path
    * CHECK_DOS_FORMAT =
    IMPORTING
    * DRIVE =
    extension = extension
    name = name
    * NAME_WITH_EXT =
    * PATH =
    EXCEPTIONS
    invalid_drive = 1
    invalid_extension = 2
    invalid_name = 3
    invalid_path = 4
    OTHERS = 5
    regards,
    amit m.

  • Camera raw 8.3.0.141 truncates file names

    This is a recent thing.
    I open jpg images from bridge cs6 into camera raw and save new versions from camera raw into a new folder.
    Our incoming file names contain important data but not all of the name is written when I save jpg from camera raw.
    file name length seems to max out at 60 characters or so.
    THIS WAS NOT THE CASE SOME MONTHS AGO IN THIS MACHINE.
    Our folder names are long also but the combined path + filename length  rarely exceed 230 characters.
    Our file naming system has worked for some years and photoshop does not truncate file names, only this latest camera raw.
    This is on win 7  64 bit pro machine - our filenames do not need to be compatible with anything else whatever.
    example of our file/folder naming lenghts on my win machine:
    C:\AAliikkeet\02 xxxx oierjksinth\112255_ehhsyag somajrysen fgetrakunnan paievjerho_CO_10022014_til.73673\vlc\nietalahtn, naurvkustunr_bbseh syplamaiden syrdknhhar prifakehfo_IMG2722korjattu_cpy004_5000_02.jpg
    the real names have been replaced with strings of corrensponding length so this long baby represents a long(ish) folder+filename combo in our systems.
    This is a major new problem.
    Any help appreciated - even the good old "use shorter file names, idiot" but that is not an option for me.
    We are working in an industrial environment and systems  - including file naming have been working OK for some years and I cannot change our systems just to please my latest camera raw.

    Thank you for your kind advice and interest in my problem.
    I tested:
    c:\in\v  -folder is the one that jpg is read
    c:\in\vlc is folder that the camera raw saves jpg
    original file name was:
    HIETALAHTI, TENAVAMUSKARI_VAASAN SUOMALAISEN SEURAKUNNAN PÄIVÄKERHO_cpy004_5000_02.jpg
    it is truncated into:
    HIETALAHTI, TENAVAMUSKARI_VAASAN SUOMALAISEN SEURAKUNNAN P.jpg
    I shortened the original file name and removed the scandinavian A with dots on top of it and the comma from ther file name:
    HIETALAHTI TENAVAMUSK_VAASAN SUOMAL SRK PAIVAKERHO_cpy004_5000_02.jpg
    truncates to:
    HIETALAHTI TENAVAMUSK_VAASAN SUOMAL SRK PAIVAKERHO_cpy004_5.jpg
    the scandinavian alphabet is not a problem (the file names are not always clipped in their position).but causes some extra truncating:
    HIETALAHTI-TENAVAMUSKARI_VAASAN SUOMALAINEN PÄIVÄKERHO_CPY00.jpg turns into:
    HIETALAHTI-TENAVAMUSKARI_VAASAN SUOMALAINEN PÄIVÄKERHO_CP.jpg
    and
    HIETALAHTI-TENAVAMUSKARI_VAASAN SUOMALAINEN PÄIVÄKERHO_CPY0.jpg into same
    HIETALAHTI-TENAVAMUSKARI_VAASAN SUOMALAINEN PÄIVÄKERHO_CP.jpg
    This is why I havent found a good rule in this.
    In camera raw the whole file name shows under the preview image but  in saving the image the file naming example is truncated.
    Even the longest of our file names worked flawlessly  for several years until maybe two weeks ago.
    60 characters is top length that did not truncate in this testing

  • File name and path should be passed as parameter

    hi all,
    i am writing a set of statements into the text file. But i have to pass the file name and also path as a user enterable parameter.
    please suggest me to proceed further.
    for ex: i am storing it as
    output:=text_io.fopen(c:abc\def\out.txt','w');
    right now i am giving like this and storing the data, but now i have to allow file name and path as user parameter.
    please suggest me.
    Thanks..

    Hi,
    for ex: i am storing it as
    output:=text_io.fopen(c:abc\def\out.txt','w');
    right now i am giving like this and storing the data, but now i have to allow file name and path as user parameter.
    please suggest me.Well, how hard can it be?
    You have to get those two parameters from your application into two variables, say "v_filename" and "v_pathname", and then create the file just the same way using the variables to construct the full path :
    output:=text_io.fopen(v_pathname || '\' || v_filename,'w');

  • How to get the target file name from an URL?

    Hi there,
    I am trying to download data from an URL and save the content in a file that have the same name as the file on the server. In some way, what I want to do is pretty similar to what you can do when you do a right click on a link in Internet Explorer (or any other web browser) and choose "save target as".
    If the URL is a direct link to the file (for example: http://java.sun.com/images/e8_java_logo_red.jpg ), I do not have any problem:
    URL url = new URL("http://java.sun.com/images/e8_java_logo_red.jpg");
    System.out.println("Opening connection to " + url + "...");
    // Copy resource to local file                   
    InputStream is = url.openStream();
    FileOutputStream fos=null;
    String fileName = null;
    StringTokenizer st=new StringTokenizer(url.getFile(), "/");
    while (st.hasMoreTokens())
                    fileName=st.nextToken();
    System.out.println("The file name will be: " + fileName);
    File localFile= new File(System.getProperty("user.dir"), fileName);
    fos = new FileOutputStream(localFile);
    try {
        byte[] buf = new byte[1024];
        int i = 0;
        while ((i = is.read(buf)) != -1) {
            fos.write(buf, 0, i);
    } catch (Throwable e) {
        e.printStackTrace();
    } finally {
        if (is != null)
            is.close();
        if (fos != null)
            fos.close();
    }Everything is fine, the file name I get is "e8_java_logo_red.jpg", which is what I expect to get.
    However, if the URL is an indirect link to the file (for example: http://javadl.sun.com/webapps/download/AutoDL?BundleId=37719 , which link to a file named JavaSetup6u18-rv.exe ), the similar code return AutoDL?BundleId=37719 as file name, when I would like to have JavaSetup6u18-rv.exe .
    URL url = new URL("http://javadl.sun.com/webapps/download/AutoDL?BundleId=37719");
    System.out.println("Opening connection to " + url + "...");
    // Copy resource to local file                   
    InputStream is = url.openStream();
    FileOutputStream fos=null;
    String fileName = null;
    StringTokenizer st=new StringTokenizer(url.getFile(), "/");
    while (st.hasMoreTokens())
                    fileName=st.nextToken();
    System.out.println("The file name will be: " + fileName);
    File localFile= new File(System.getProperty("user.dir"), fileName);
    fos = new FileOutputStream(localFile);
    try {
        byte[] buf = new byte[1024];
        int i = 0;
        while ((i = is.read(buf)) != -1) {
            fos.write(buf, 0, i);
    } catch (Throwable e) {
        e.printStackTrace();
    } finally {
        if (is != null)
            is.close();
        if (fos != null)
            fos.close();
    }Do you know how I can do that.
    Thanks for your help
    // JB
    Edited by: jb-from-sydney on Feb 9, 2010 10:37 PM

    Thanks for your answer.
    By following your idea, I found out that one of the header ( content-disposition ) can contain the name to be used if the file is downloaded. Here is the full code that allow you to download locally a file on the Internet:
          * Download locally a file from a given URL.
          * @param url - the url.
          * @param destinationFolder - The destination folder.
          * @return the file
          * @throws IOException Signals that an I/O exception has occurred.
         public static final File downloadFile(URL url, File destinationFolder) throws IOException {
              URLConnection urlC = url.openConnection();
              InputStream is = urlC.getInputStream();
              FileOutputStream fos = null;
              String fileName = getFileName(urlC);
              destinationFolder.mkdirs();
              File localFile = new File(destinationFolder, fileName);
              fos = new FileOutputStream(localFile);
              try {
                   byte[] buf = new byte[1024];
                   int i = 0;
                   while ((i = is.read(buf)) != -1) {
                        fos.write(buf, 0, i);
              } finally {
                   if (is != null)
                        is.close();
                   if (fos != null)
                        fos.close();
              return localFile;
          * Returns the file name associated to an url connection.<br />
          * The result is not a path but just a file name.
          * @param urlC - the url connection
          * @return the file name
          * @throws IOException Signals that an I/O exception has occurred.
         private static final String getFileName(URLConnection urlC) throws IOException {
              String fileName = null;
              String contentDisposition = urlC.getHeaderField("content-disposition");
              if (contentDisposition != null) {
                   fileName = extractFileNameFromContentDisposition(contentDisposition);
              // if the file name cannot be extracted from the content-disposition
              // header, using the url.getFilename() method
              if (fileName == null) {
                   StringTokenizer st = new StringTokenizer(urlC.getURL().getFile(), "/");
                   while (st.hasMoreTokens())
                        fileName = st.nextToken();
              return fileName;
          * Extract the file name from the content disposition header.
          * <p>
          * See <a
          * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html">http:
          * //www.w3.org/Protocols/rfc2616/rfc2616-sec19.html</a> for detailled
          * information regarding the headers in HTML.
          * @param contentDisposition - the content-disposition header. Cannot be
          *            <code>null>/code>.
          * @return the file name, or <code>null</code> if the content-disposition
          *         header does not contain the filename attribute.
         private static final String extractFileNameFromContentDisposition(
                   String contentDisposition) {
              String[] attributes = contentDisposition.split(";");
              for (String a : attributes) {
                   if (a.toLowerCase().contains("filename")) {
                        // The attribute is the file name. The filename is between
                        // quotes.
                        return a.substring(a.indexOf('\"') + 1, a.lastIndexOf('\"'));
              // not found
              return null;
         }

  • Adding the file name and path to a document

    Is there a way to automatically generate the file name and path (i.e. 'P:\ARF530\BACKGROUND\diagram.ai') to a document without having to copy and paste from the explorer window?

    Hi,
    So to select the directory, in the WHNE-BUTTON-PRESSED trigger write,
         :<block_name>.<path_item_name> := GET_FILE_NAME(' ', NULL, NULL, 'Choose any directory.', OPEN_FILE, FALSE);
         IF SUBSTR(:<block_name>.<path_item_name>, LENGTH(:<block_name>.<path_item_name>)) != '/' AND SUBSTR(:<block_name>.<path_item_name>, LENGTH(:<block_name>.<path_item_name>)) != '\' THEN
              :<block_name>.<path_item_name> := :<block_name>.<path_item_name> || '\';
         END IF;and to open the file, write,
    DECLARE
      FT_File  TEXT_IO.FILE_TYPE;
    BEGIN
      IF SUBSTR(:<block_name>.<path_item_name>, LENGTH(:<block_name>.<path_item_name>)) = '/' OR SUBSTR(:<block_name>.<path_item_name>, LENGTH(:<block_name>.<path_item_name>)) = '\' OR :<block_name>.<path_item_name> IS NULL THEN
           MESSAGE('Please Enter file name before continue');
           MESSAGE('Please Enter file name before continue');
           RAISE FORM_TRIGGER_FAILURE;
      END IF;
      FT_File := TEXT_IO.FOPEN(:<block_name>.<path_item_name>, 'w');
    END;Regards,
    Manu.
    If my response or the response of another was helpful or Correct, please mark it accordingly

  • Separating file name and path

    Hi,
    I need to separate the file name and path of the file which I am uploading from my BSP appl.I am using SO_SPLIT_FILNAME_PATH ,but it is not working because this fm identifies '\' only from GUI front end.
    How do I separate the file name and path in BSP ?
    Regards,
    Ananya

    Assuming that you are using File Upload tag for file upload:
    DATA: fileUpload TYPE REF TO CL_HTMLB_FILEUPLOAD.
    fileUpload ?= CL_HTMLB_MANAGER=>GET_DATA(
                           request = request
                           id      = 'myUpload'
                           name    = 'fileUpload' ).
    file_name      = fileUpload->file_name.
    file_mime_type = fileUpload->file_content_type.
    file_length    = fileUpload->file_length.
    file_content   = fileUpload->file_content.
    Data : filepath type string,
           filename type string,
           t1 type string.
    filepath = file_name .
    while filepath CA ''.
      split filepath at '' into t1 filename.
    endwhile.
    In my sample code above, filename attribute will contain the name of the file uploaded.
    Hope this solves the problem.
    Regards,
    Ravikiran.

  • Question about pass file name and path to file write adapter

    I need to pass file name and path to file adapter for write. I got partial answers from thread Re: Get File name using File Adapter , but seems InboundHeader_msg or outboundHeader_msg only takes file name, how do I pass file directory?
    since I still have to specify file format (like xxx_%xx%.txt) in the file adapter wizard. Will this name conflict with what the name defined in InboundHeader_msg ?
    Similarly, how can I pass a file name and path to a file synchread adapter?
    Thanks,
    Message was edited by:
    user531689

    Just overwrite the filename in the WSDL file that was generated

  • Target Data File Name and Path

    Hi,
    I'm trying to deploy a mapping that writes data into a file, but I need to dynamically set the name and the directory where I want to write this file. The only workaround I found was manually change the pl/sql generated code and change the values in the FOPEN call with a parameter, but this is no what I really want to do. Does anyone know how to tell WB not to hardcode the file name and path?
    I really appreciate you time,
    thanks in advance,
    Matias

    Carla,
    Unfortunately our releases do not go that fast...
    What you could do as an intermediate solution (this is what I would do) is create your mapping and load into a staging table (this can happen in set-based mode so would be fast). In a post mapping process you manually write to the flat file by making the calls to FOPEN etc. by selecting from the staging table. The post mapping process can have an input parameter that you dynamically pass (i.e. via a mapping parameter) and set the file name.
    Mark.

Maybe you are looking for