J'ai un problème. Mon proget crée un fichier xml. Dans l'iPhone, ce fichier était stocké dans NSDocumentDirectory. Je veux enregistrer ce fichier dans un autre répertoire comme Desktop (où se trouvent les applications) ou un autre dossier visible. Merci.Enregistrer le fichier dans un emplacement différent dans l'application iPhone
Ceci est mon code:
-(void)saveInXML:(NSString*)name:(float)x:(float)y:(float)z{
//NSDocumentDirectory put the file in the app directory
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectoryPath stringByAppendingPathComponent:@"filePosizioni.xml"];
NSFileHandle *myHandle;
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *titoloXML = [NSString stringWithFormat:@"File Xml delle posizioni del iPhone"];
NSString *inizioTag = [NSString stringWithFormat:@"\n\n\n<posizione>"];
NSString *tagName = [NSString stringWithFormat:@"\n <name>%@</name>", name];
NSString *tagX = [NSString stringWithFormat:@"\n <x>%f</x>", x];
NSString *tagY = [NSString stringWithFormat:@"\n <y>%f</y>", y];
NSString *tagZ = [NSString stringWithFormat:@"\n <z>%f</z>", z];
NSString *fineTag= [NSString stringWithFormat:@"\n</posizione>"];
NSData* dataTitoloXML = [titoloXML dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataInizioTag = [inizioTag dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataName = [tagName dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataX = [tagX dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataY = [tagY dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataZ = [tagZ dataUsingEncoding: NSASCIIStringEncoding];
NSData* dataFineTag = [fineTag dataUsingEncoding: NSASCIIStringEncoding];
if(![fileManager fileExistsAtPath:filePath])
[fileManager createFileAtPath:filePath contents:dataTitoloXML attributes:nil];
myHandle = [NSFileHandle fileHandleForUpdatingAtPath:filePath];
[myHandle seekToEndOfFile];
[myHandle writeData:dataInizioTag];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
[myHandle writeData:dataName];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
[myHandle writeData:dataX];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
[myHandle writeData:dataY];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
[myHandle writeData:dataZ];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
[myHandle writeData:dataFineTag];
NSLog(@"writeok");
[myHandle seekToEndOfFile];
NSLog(@"zp26 %@",filePath);
}