在ios中,所有程序都運行在自己沙箱中,即只能訪問自己程序的文件夾,不能訪問其他程序的文件夾。
注意程序文件的路徑。
在Application文件夾裏面放着所有在模擬器上運行過的程序程序文件。長長的編碼是爲了唯一地標識一個程序
在每個程序的文件夾裏面,Documents文件夾是存放應用程序(app)的地方,而Library文件夾是存放應用程序的設置。
UIWebView *webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 55, 320, 300)];
webView.delegate = self;
webView.multipleTouchEnabled = YES;
webView.scalesPageToFit = YES;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);//搜索本程序文件目錄,也就是上面提到的Documents文件夾
//NSDocumentDirectory常量就是指定查找的目標是Documents文件夾,而NSUuserDomainMask常量指定從應用程序的主目錄中搜索,也就是從Application文件夾的相應程序的文件夾開始找
//YES表示希望獲取所有找到的目錄的完整路徑
NSString *documentsDirectory = [paths objectAtIndex:0];
//這句話記住就行,每個應用程序文件夾裏面只有唯一一個Documents文件夾,但是NSSearch方法會返回很多個,我們只取第一個即可。
NSString *docPath = [documentsDirectory stringByAppendingString:@"/doc2003_1.doc"]; NSLog(@"#######%@",docPath);
NSURL *url = [NSURL fileURLWithPath:docPath];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
[self.view addSubview:webView];
[webView release];
序列化:也成爲持久化,即將對象永久地從程序中寫到文件中,操作方法是:
[array writeToFile:filePath atomically:YES];
atomically參數表示文件首先寫入一個臨時文件中,這種方法保證了文件永遠不會損壞,即使寫的過程系統崩潰。
對應的是:NSArray *array = [[NSArray alloc] initWithContentsOfFile: filePath];