Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

Chapter 11. Files > File System APIs

11.1. File System APIs

The functions, classes, and methods you use to interact with the file system are collectively referred to as the file system's application programming interface (API). In Java, the file system API is neatly organized in the java.io package. Not so in Objective-C. The Objective-C Cocoa framework provides a simple interface to the file system that's adequate for most needs. Parallel to that is the Core Services framework. Core Services provides numerous advanced file system functions along with a set of C APIs that mimic the original file services of the classic Macintosh operating system (often referred to as the Carbon API). Underneath both of these APIs is the core BSD API. These are the C functions that actually implement most of the file services in Mac OS X. Much of the Cocoa and Core Services are just compatibility APIs that do little more than call a BSD function to get the work done.

A conceptual difference between Objective-C and Java is that much of Java is organized around abstract classes that read and write serial data (java.io.Reader, java.io.Writer, java.io.InputStream, java.io.OutputStream), with subclasses that work with data files. Objective-C (and C) tend to use purpose-built functions for working with data files, and reserve the use of data stream classes for network ports and communication pipes. There is some overlap, but much less than in Java.


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial


  
  • Safari Books Online
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint