2016-11-26 19 views
4

txtファイルからの読み込み方法とファイルの特定の部分の印刷方法を知りたいですか?Swift 3のtxtファイルからの読み込み

たとえば、 "test.txtのは" 含まれています:

は '' 'ジェイソン16男性のセルフ・プログラミング

ジョシュ15男性の友人の芸術' ''

だから私は方法を探しています各単語と行を別々に印刷します。このようなだけ印刷など:

"ジェイソン"

"ジェイソンは16である"

これは私の周り

if let filepath = Bundle.main.path(forResource: "test", ofType: "txt") 
    { 
     do 
     { 
      let contents = try String(contentsOfFile: filepath) 
      print(contents[0]) 

     } 
     catch 
     { 
      // contents could not be loaded 
     } 
    } 
    else 
    { 
     // example.txt not found! 
    } 
を検索するから、これまでに得たものである "ジョシュは芸術が好き"

ご協力いただきありがとうございます。

+0

あなたが別途言葉にアクセスプロパティリスト(XMLの特別な種類を使用することを検討してください)を使用します。 – vadian

+0

うーん、おそらくそれも動作する可能性があります。しかし、私は本当にテキストをtxtファイルに保存したいのですが、実際にはtxtファイルの中に入れるために多くの情報が必要です。それぞれの行は関連する情報を持っていて、200行以上のtxtを持っています。 – JasonZhao

+0

Linuxで動作しません –

答えて

5

あなたがcontentsにあなたのファイルを読んだ後は次のようなコードで線や言葉にそれを破ることができます。

let lines = contents.components(separatedBy: "\n") 
for line in lines { 
    let words = line.components(separatedBy: " ") 
    print("\(words[0]) is \(words[1]) and likes \(words[4])") 
} 
+0

これは素晴らしい動作です!どうもありがとうございます。 – JasonZhao

+1

文字列には、この目的のために.byLinesまたは.byWordsというオプションを持つenumerateSubstringsというメソッドがあります –

関連する問題