iCloudに.zipファイルを保存します。誰でもアップロードと復元の方法を教えてください。私はアップルのiCloudバックアップのガイドラインを読んでいます。今では、いくつかのファイルと複数のイメージを持つ2つのフォルダで1つのフォルダを作成し、そのフォルダのzipファイルを生成しています。iCloudドライブに.zipファイルをバックアップして復元するにはどうすればよいですか?
1
A
答えて
5
- まず、ローカルストレージにファイルとフォルダを保存します。
- 次に、このファイルを作成します。&フォルダのZipファイル。
- 最後に、zipファイルをiCloudにアップロードします。
- このファイルを取得するには、逆の処理を行います。
- (void)viewDidLoad {
[super viewDidLoad];
[self CreatFileAndFolder];
}
ローカルにフォルダを作成し、iCloudのドライブにアップロードする場合は、このフォルダ内のファイルを保存します。
-(void)CreatFileAndFolder{
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:@"/meetInChat"];
if (![[NSFileManager defaultManager] fileExistsAtPath:dataPath])
[[NSFileManager defaultManager] createDirectoryAtPath:dataPath withIntermediateDirectories:NO attributes:nil error:&error];
NSString *stringToWrite = @"1\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n41\n2\n3\n4";
NSString *exportPath = [dataPath stringByAppendingString:@"/mytext.txt"];
[stringToWrite writeToFile:exportPath atomically:YES encoding:NSUTF8StringEncoding error:&error];
}
まず、あなたのフォルダーを提出して、iCloudのドライブ上のZipファイルをアップロードしたZipを作成してアクションを作成します。
-(IBAction) iCloudSyncing:(id)sender
{
[self zipFolder];
//--------------------------Zip Folder Upload on iCloud-----------------------------//
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *zipFilePath = [documentsDirectory stringByAppendingPathComponent:@"meetInChat.zip"];
NSLog(@"FilePath=>%@",zipFilePath);
NSURL *u = [[NSURL alloc] initFileURLWithPath:zipFilePath];
NSData *data = [[NSData alloc] initWithContentsOfURL:u];
NSURL *ubiq = [[NSFileManager defaultManager]URLForUbiquityContainerIdentifier:nil];
NSURL *ubiquitousPackage = [[ubiq URLByAppendingPathComponent:@"Documents"]URLByAppendingPathComponent:@"meetInChat.zip"];
Mydoc = [[MyDocument alloc] initWithFileURL:ubiquitousPackage];
Mydoc.zipDataContent = data;
[Mydoc saveToURL:[Mydoc fileURL] forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success)
{
if (success)
{
NSLog(@"PictureZip: Synced with icloud");
[[NSUbiquitousKeyValueStore defaultStore]setData:data forKey:@"meetInChat"];
}
else
NSLog(@"PictureZip: Syncing FAILED with icloud");
}];
}
ここ
バックのiCloudドライブからZIPファイルをゲット
はその後、逆のプロセスがファイルを解凍し、取得行うフォルダからZipファイルを作成します。データを戻す。-(BOOL)zipFolder { //--------------------------Create Zip Folder -----------------------------// NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docDirectory = [paths objectAtIndex:0]; BOOL isDir=NO; NSArray *subpaths = nil; NSString *exportPath = [docDirectory stringByAppendingString:@"/meetInChat"]; NSFileManager *fileManager = [NSFileManager defaultManager]; if ([fileManager fileExistsAtPath:exportPath isDirectory:&isDir] && isDir){ subpaths = [fileManager subpathsAtPath:exportPath]; } NSString *meetInChatPath = [docDirectory stringByAppendingString:[NSString stringWithFormat:@"/%@.zip",@"meetInChat"]]; ZipArchive *archiver = [[ZipArchive alloc] init]; [archiver CreateZipFile2:meetInChatPath]; if (isDir) { for(NSString *path in subpaths){ NSString *fullPath = [exportPath stringByAppendingPathComponent:path]; if([fileManager fileExistsAtPath:fullPath isDirectory:&isDir] && !isDir){ [archiver addFileToZip:fullPath newname:path]; } } } else { [archiver addFileToZip:exportPath newname:@"meetInChat"]; } BOOL successCompressing = [archiver CloseZipFile2]; if(successCompressing) return YES; else return NO; }
- (IBAction)GetData:(id)sender {
//--------------------------Get data back from iCloud -----------------------------//
id token = [[NSFileManager defaultManager] ubiquityIdentityToken];
if (token == nil)
{
NSLog(@"ICloud Is not LogIn");
}
else
{
NSLog(@"ICloud Is LogIn");
NSData *dataFile = [[NSUbiquitousKeyValueStore defaultStore]dataForKey:@"meetInChat"];
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = [NSString stringWithFormat:@"meetInChat.zip"];
NSString* fileAtPath = [documentsDirectory stringByAppendingPathComponent:fileName];
[dataFile writeToFile:fileAtPath atomically:NO];
}
}
+0
ニースは自分の日を保存しました。他の人はMyDocumentがUIDocumentのサブクラスです –
関連する問題
- 1. 最新のバックアップをプログラムによって復元するにはどうすればよいですか?
- 2. iOSアプリケーション内からiCloudドライブのファイルにアクセスするにはどうすればよいですか?
- 3. iOSアプリケーションを自動iCloudバックアップを使用して設定するにはどうすればよいですか?
- 4. SQLバックアップからTFSソースコードを復元するにはどうすればよいですか?
- 5. ブランチ間でコミットされていないファイルを復元するにはどうすればよいですか?
- 6. WSLの削除/置換を準備する際に、ファイルやアクセス許可をバックアップして復元するにはどうすればよいですか?
- 7. iCloudバックアップから開発中のiOSアプリケーションのリストアをテストするにはどうすればよいですか?
- 8. 2008ツールを使用してSSAS 2000 .CABファイルを復元するにはどうすればよいですか?
- 9. フォームを復元するにはどうすればよいですか?
- 10. コンテキストを復元するにはどうすればよいですか?
- 11. UTF-8バイナリファイルを復元するにはどうすればよいですか?
- 12. ngClickでZIPファイルをダウンロードするにはどうすればよいですか?
- 13. C#でzipファイルをダウンロードするにはどうすればよいですか?
- 14. コミットダイアログで「コミット後に復元する」ファイルを表示するにはどうすればよいですか?
- 15. 自動モードでMySQL ServerデータベースをGoogleドライブにバックアップするにはどうすればよいですか?
- 16. Excel:削除したシートをExcelファイルに復元するにはどうすればよいですか?
- 17. すでに開いているアクティビティを復元するにはどうすればよいですか?
- 18. sdカードにバックアップを作成した後、Android SharedPreferencesをXMLファイルから復元するにはどうすればよいですか?
- 19. Visual Studio 2015で欠落しているプロジェクトテンプレートを復元するにはどうすればよいですか?
- 20. TFSサーバーの手動バックアップ/復元はどのように機能しますか?
- 21. 応答ファイルOutputStreamを使用してzipファイルをブラウザに返すにはどうすればよいですか?
- 22. Googleドライブでファイルを開くにはどうすればよいですか? - Cordova
- 23. どのようにdb2の10.1データベースのバックアップを復元するには9.7
- 24. Pythonスクリプトを使用してGoogleドライブにファイルをアップロードするにはどうすればよいですか?
- 25. Pythonで複数の変数を保存して復元するにはどうすればよいですか?
- 26. フレームスプリッタの位置を保存して後で復元するにはどうすればよいですか?
- 27. iCloudの復元後にダウンロードしたメディアファイルを復元する方法は?
- 28. Heroku PG Backupを使用して作成したバックアップから3つのアイテムを復元するにはどうすればよいですか?
- 29. vbaを使用してGoogleドライブからExcelファイルをダウンロードするにはどうすればよいですか?
- 30. IBM MobileFirst JSONStoreがiCloudまたはiTunesにバックアップされないようにするにはどうすればよいですか?
これまでのコードをご記入ください。 – Eeshwar