Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams func appendingPathComponent(_ string: String) -> String { return fileURL.appendingPathComponent(string).path var lastPathComponent:String { get { return fileURL.lastPathComponent var deletingPathExtension: String { return fileURL.deletingPathExtension().path

Problem is lastPathComponent contains '/' as opposed to NSString counterpart which doesn't contains this. What is an elegant workaround? Didn't find an elegant answer in StackOverflow.

EDIT: Here is the real code that gives me issues:

  filenameField.text = path.lastPathComponent.deletingPathExtension

I fixed it by switching the two routines, i.e.

  filenameField.text = path.deletingPathExtension.lastPathComponent
                "/abc/def/xyz".lastPathComponent returns "xyz" without a slash. Can you add a concrete example demonstrating your problem?
– Martin R
                Aug 13, 2018 at 9:35
                Get used to use URLs. There must be a reason why Apple removed the path manipulating API from String
– vadian
                Aug 13, 2018 at 10:14
                I updated the code. It is actually deletingPathExtension that is appending /. Please suggest correct code.
– Deepak Sharma
                Aug 13, 2018 at 11:10
                @OOPer I posted an edit. it was actually deletingPathComponent that is the cause of issue.
– Deepak Sharma
                Aug 13, 2018 at 11:34
        

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.