我知道如何創建sqlite數據庫,插入數據到它,刪除行等通過iPhone開發,但我想通過編程刪除整個數據庫本身,但沒有得到任何幫助。請有人指導我如何從設備通過代碼刪除/刪除整個sqlite數據庫本身。iPhone:刪除/刪除SQLite數據庫?
謝謝!
我知道如何創建sqlite數據庫,插入數據到它,刪除行等通過iPhone開發,但我想通過編程刪除整個數據庫本身,但沒有得到任何幫助。請有人指導我如何從設備通過代碼刪除/刪除整個sqlite數據庫本身。iPhone:刪除/刪除SQLite數據庫?
謝謝!
數據庫文件在文檔目錄中,而不是在Bundle中,您可以使用NSFileManager刪除文件。 確保任何進度都不會打開。
如果你想刪除整個數據庫,你必須在文件系統中找到它並在那裏刪除它。
如果你的數據庫中的文檔,你可以嘗試:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"youdb.db"];
if([[NSFileManager defaultManager] fileExistsAtPath:filePath]){
[[NSFileManager defaultManager] removeItemAtPath:filePath error:nil];
}
嘗試
NSError *err;
NSFileManager *fm = [NSFileManager defaultManager];
err = nil;
NSString *deleteFileName = [NSString stringWithFormat:@"%@/FileName",[[NSBundle mainBundle] resourcePath]];
NSURL *url = [NSURL fileURLWithPath:deleteFileName];
[fm removeItemAtPath:[url path] error:&err];
if(err)
{
NSLog(@"File Manager: %@ %d %@", [err domain], [err code], [[err userInfo] description]);
}
else
{
NSLog(@"File %@ deleted.",fileName);
}
如果你使用Visual Studio中Xamarin這將很好地工作。
string _FileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), "databaseFileName.db3");
File.Delete(_FileName);