troubleshooting Question

stripping elements of different length from a file name java

Avatar of Richard Teasdale
Richard TeasdaleFlag for United Kingdom of Great Britain and Northern Ireland asked on
Java
9 Comments1 Solution44 ViewsLast Modified:
Hi: As a company we get a lot of orders sent in csv format by email. I use  a third party  program called 'attachment save'  which runs in outlook and saves all attachments to a particular directory. Since it is not unknown for the files from different customers to have the same name, the program adds the date. Thus an attached file j031251.csv  is saved as J0312512016-01-27 12-11.csv .
I then use java to pick out files from a certain customer (in this case always has "wp201" in his filename:

for (int i = 0; i < files.length; i++) {
            fileName = files(i).getName();   // (i put in brackets not parenthesis)
            if(fileName.contains("WP201")){
            //rename file to take date & time off    
             String abc = new String(fileName);
             String xyz = new String(abc.substring(0,(abc.length()-20))+abc.substring((abc.length()-4),abc.length()))  ;            
            //end rename file to take date & time off    
               
                File currentFile = new File(dir + "\\" + abc);
                           success = currentFile.renameTo(new File(dew + "\\" + xyz));
                if(success){        
                    System.out.println("File Copied: "+ currentFile);
                    currentFile.delete();
                }
                else System.out.println("NOT Copied: " + currentFile);          
           }
        }    
Which strips out the date and puts the file in a specific folder. It does this by counting back from the end of the file; easy as the date is always 16 characters.
However, now another customer wants special treatment; but his file is the same as a lot of other peoples files. 'Attachment save' will allow me to insert the senders address like so: "J031251XXXcustomer.co.ukYYY2016-01-27 12-11.csv", where I insert XXX and YYY as delimiters, but can choose anything. Is there a way of stripping out everything after the XXX but BEFORE the ".csv"? This is because , of course, customer addresses will be of different length and file types will be different.
ASKER CERTIFIED SOLUTION
krakatoa

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Join our community to see this answer!
Unlock 1 Answer and 9 Comments.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 9 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros