post Image
Swiftでのファイル操作

Swiftでのファイル操作についてまとめました。

環境

macOS High Sierra (10.13.2)
Xcode 9.2
Swift 4.0
App Sandbox:OFF

Documentsフォルダのファイルを取得

Documentsフォルダにある data.txt のフルパスを取得する

if let dir = FileManager.default.urls( for: .documentDirectory, in: .userDomainMask ).first {

   let filePath = dir.appendingPathComponent( "data.txt" )
   let path:String = filePath.path
   print(path)

}

アプリにバンドルされているファイルを取得

アプリにバンドルされている data.txt のフルパスを取得する

if let path = Bundle.main.path( forResource: "data", ofType: "txt" ) {

    print(path)

}

ファイルの存在確認

data.txt が存在するか確認する。

if( FileManager.default.fileExists( atPath: "data.txt" ) ) {

    print("ファイルあり")

} else {

    print("ファイルなし")

}

ファイルのコピー

data1.txtdata2.txt にコピーする。

do {

    try FileManager.default.copyItem( atPath: "data1.txt", toPath: "data2.txt" )

} catch {

    //エラー処理
    print("error")

}

ファイル名の変更(ファイルの移動)

ファイル名を data1.txt から data2.txt に変更する。

do {

    try FileManager.default.moveItem( atPath: "data1.txt", toPath: "data2.txt" )

} catch {

    //エラー処理    
    print("error")

}

ファイルの削除

data.txt を削除する。

do {

    try FileManager.default.removeItem( atPath: "data.txt" )

} catch {

    //エラー処理
    print("error")

}

フォルダの作成

test フォルダを作成する。

do {

    try FileManager.default.createDirectory( atPath: "test", withIntermediateDirectories: true, attributes: nil)

} catch {

    //エラー処理
    print("error")

}

フォルダの削除

test フォルダを削除する。

do {

    try FileManager.default.removeItem( atPath: "test" )

} catch {

    //エラー処理
    print("error")

}

関連付けられているアプリケーションで開く

data.txt を関連付けられているアプリケーションで開く。(動作には、import AppKit が必要です。)

if NSWorkspace.shared.openFile( "data.txt" ) {

    print("OK")

} else {

    print("Error")

}

『 Swift 』Article List
Category List

Eye Catch Image
Read More

Androidに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

AWSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Bitcoinに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

CentOSに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

dockerに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

GitHubに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Goに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Javaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

JavaScriptに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Laravelに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Pythonに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Rubyに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Scalaに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Swiftに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Unityに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Vue.jsに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

Wordpressに関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。

Eye Catch Image
Read More

機械学習に関する現役のエンジニアのノウハウ・トレンドのトピックなど技術的な情報を提供しています。コード・プログラムの丁寧な解説をはじめ、初心者にもわかりやすいように写真や動画を多く使用しています。