On Jul 25, 2009, at 11:20 AM, Kyle Sluder wrote:
On Jul 25, 2009, at 11:00 AM, "slasktrattena...@gmail.com" <slasktrattena...@gmail.com
> wrote:
I find the third option the most likely: iTunes rewrites the data
file
frequently. Is there a way to lock the file while reading it, or
detect if it is being modified, or suchlike? Thanks.
You aren't guaranteed that the iTunes library file will always be a
plist. The "correct" recommendation, which will also solve your
issue, is to use Apple Events to get the information you need.
In the general case, since you didn't write -[NSDictionary
initWithContentsOfFile:], you can't make it safe. You'll have to
open the file and read it's data yourself, then hand that off to the
NSDictionary initializer (or perhaps NSPropertyListSerialization).
--Kyle Sluder
An alternative would be to copy the file to a temporary location, and
then read from it, as long as you are okay with the version in memory
being slightly out-of-date. However, as Kyle points out, this is not
necessarily a safe way to do things going forward, and Apple Events is
probably what you want.
- Alex Heinz
_______________________________________________
Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com