• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Changing file & directory names
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Changing file & directory names


  • Subject: Re: Changing file & directory names
  • From: John Stiles <email@hidden>
  • Date: Sat, 01 Jul 2006 12:40:42 -0700



Dean Snyder wrote:
Sherm Pendley wrote at 2:15 PM on Saturday, July 1, 2006:

"If source is a file, the method creates a file at destination that
holds the exact contents of the original file and then deletes the
original file. If source is a directory, movePath:toPath:handler:
creates a new directory at destination and recursively populates it with
duplicates of the files and directories contained in source."


This is really heavyweight
No, it's not heavy at all - you've just misunderstood what it does. When the above says "creates a file at destination", it's talking about creating a new directory entry that points to the same data, not about copying the data.

Again, with emphasis added, the documentation says, "creates a file at destination that holds the exact contents of the original file and THEN deletes the original file". That can only mean that at some point there are 2 copies of the file. (Notice there is no talk of just manipulating file references within the file manager's data structures.) That may not, in fact, be what it does, but that IS what the documentation says it does. And, of course, the issue is compounded when dealing with directories (where the documentation actually talks about "duplicates of the files and directories").

Even if it really does just make hard links, even that has undesirable consequences. For example, if a file has /ever/ been hard-linked, it can no longer be used with FSExchangeObjects. The API returns an error instead.
http://developer.apple.com/documentation/Carbon/Reference/File_Manager/Reference/reference.html#//apple_ref/c/func/FSExchangeObjects


The OP may want to look at using the Carbon File Manager, or BSD APIs, to do the rename. It's a bit more typing than Cocoa, but the APIs in this case offer more options.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden
  • Follow-Ups:
    • Re: Changing file & directory names
      • From: "Adam R. Maxwell" <email@hidden>
References: 
 >Changing file & directory names (From: Dean Snyder <email@hidden>)
 >Re: Changing file & directory names (From: Greg Titus <email@hidden>)
 >Re: Changing file & directory names (From: Dean Snyder <email@hidden>)
 >Re: Changing file & directory names (From: Sherm Pendley <email@hidden>)
 >Re: Changing file & directory names (From: Dean Snyder <email@hidden>)

  • Prev by Date: Re: Changing file & directory names
  • Next by Date: Re: Changing file & directory names
  • Previous by thread: Re: Changing file & directory names
  • Next by thread: Re: Changing file & directory names
  • Index(es):
    • Date
    • Thread