2016-12-17 27 views
1

バンドルからライブラリにフォルダをコピーするためのコードです。バンドルからライブラリフォルダ(IOS10、Swift3、xcode 8.2)へのファイルのコピー

let library = FileManager.default.urls(for: .libraryDirectory, in: .userDomainMask)[0] 
    let bundle = Bundle.main.path(forResource: "MYFOLDER", ofType: "")! 

    let fileManager = FileManager.default 
    do 
    { 
     try fileManager.copyItem(atPath: bundle, toPath: library.path) 
     print("NO CATCH") 
    } 
    catch 
    { 
      print(error) 
    } 

私はこのエラーを取得する:**

Error Domain=NSCocoaErrorDomain Code=516 "“MYFOLDER” couldn’t be copied to “CBE6D212-8827-423B-AEC8-6830EED0EC5C” because an item with the same name already exists." UserInfo={NSSourceFilePathErrorKey=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Bundle/Application/C357EB0E-6719-464B-8DC9-513E5E7F83E1/Heffy.app/MYFOLDER, NSUserStringVariant=( Copy ), NSFilePath=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Bundle/Application/C357EB0E-6719-464B-8DC9-513E5E7F83E1/Heffy.app/MYFOLDER, NSDestinationFilePath=/Users/Joshua/Library/Developer/CoreSimulator/Devices/84EF61E3-6739-47D1-A0AE-1215B89D0CE7/data/Containers/Data/Application/CBE6D212-8827-423B-AEC8-6830EED0EC5C/Library, NSUnderlyingError=0x797878e0 {Error Domain=NSPOSIXErrorDomain Code=17 "File exists"}}

しかし、私はそれは、あなたのエラーを1としてライブラリフォルダ*

+0

ドライブのデータを削除し、シミュレータからプロジェクトを削除して、xコードプロジェクトをクリーンアップし、ビルドしてもう一度実行します。時々起こるかもしれません。すべては問題ありませんが、まだエラーがあります。まだエラーが出たら私に知らせてください。 –

+0

@TinuDahiyaこの質問は申し訳ありませんが、ドライブデータとプロジェクトをシミュレータから削除する方法はありますか? –

+0

@TinuDahiya私はちょうどSimulator->コンテンツと設定をリセットしました。シミュレータが読み込まれます。私は次に起こることを報告します。 –

答えて

0

に存在しないファイルがすでに存在しているCHECKED。このコードを試してチェックしてください

+0

助けてくれてありがとう。このコードを追加してもう一度テストを再試行します。それは今thoで動作します。 –

0

私はXcodeを閉じたので私はうなずきました。私のブラウザを閉じました。私のマシンをオフにして、それをオンにした。私はそれを感謝するTinuDahiyaの助けをありがとう^ __^V。

+0

実際には私はMacシステムを持っていないので、私はあなたのコードを実行することはできません、 –

関連する問題