2014-10-17 54 views
0

我需要從此類 https://github.com/kailoa/iphone-smtp/blob/master/Classes/NSData%2BBase64Additions.m如何使用 - (NSString *)encodeWrappedBase64ForData在swift中?

客觀CI調用這個喜歡在編碼NSData的類型的視頻與- (NSString *)encodeWrappedBase64ForData{}

[videoPath encodeWrappedBase64ForData] 
    NSDictionary * vcfPart3 = [NSDictionary dictionaryWithObjectsAndKeys:@"video/quicktime;\r\n\tx-unix-mode=0644;\r\n\tname=\"video.mp4\"",kSKPSMTPPartContentTypeKey, 
          @"attachment;\r\n\tfilename=\"video.mp4\"",kSKPSMTPPartContentDispositionKey, [videoPath encodeWrappedBase64ForData], kSKPSMTPPartMessageKey, @"base64", kSKPSMTPPartContentTransferEncodingKey, nil]; 

但是在斯威夫特,我不能導入類NSData+Base64Additions

但我不知道如何在Swift中調用它。我怎樣才能從swift調用這個?

謝謝!

回答

0
  1. 類文件添加到您的項目(此電話,您將只需要的NSData + Base64Additions.h的NSData + Base64Additions.mBase64Transcoder.hBase64Transcoder.m)。

  2. 如果您還沒有橋接頭,Xcode會詢問您是否需要橋接頭。你做!

  3. 在橋接報頭,進口的NSData + Base64Additions.h,讓雨燕可以看到導入的文件:

    #import "NSData+Base64Additions.h" 
    

完成!現在您可以調用該類別中定義的NSData方法:

let s = d.encodeWrappedBase64ForData() 
0

您可能可以導入NSData+Base64Additions庫,並明智地使用橋接頭,但這不是必需的。 iOS擁有自己的本地base-64例程,例如

let data = NSData(contentsOfFile: path) 
let base64String = data.base64EncodedStringWithOptions(nil)