ディレクトリからイメージを取得し、base64stringに変換してWebサービスを通じて送信する方法。私はディレクトリに画像を持っています。そのイメージを取得し、base64文字列に変換する必要がありますか?
答えて
あなたはこれを行うことができます。
// Gets image from your file directory
UIImage *image = [UIImage imageWithContentsOfFile:@"path/to/your/directory"];
// Converts it to NSData type.
NSData *imageData = UIImageJPEGRepresentation(image, 1);
// Converts it to base64 string.
NSString *encodedString = [imageData base64Encoding];
// Swift
var image: UIImage = UIImage.imageWithContentsOfFile("path/to/your/directory")!
// Converts it to NSData type.
var imageData: NSData = UIImageJPEGRepresentation(image, 1)
// Converts it to base64 string.
var encodedString: String = imageData.base64Encoding()
質問には 'swift'と 'swift2'というタグがあります。答えのコードをSwiftに変更することを検討することもできます。 –
私は画像を変換 1.(3例はまったく関係ありません)すべての3つのシナリオが追加されました。 2.ここでは、サーバ
上の画像を投稿ファイルのディレクトリ 3から画像を見つけるには、あなたがここにbase64で画像
//Use image name from bundle to create NSData
let image : UIImage = UIImage(named:"imageNameHere")!
//Now use image to create into NSData format
let imageData:NSData = UIImagePNGRepresentation(image)!
//OR next possibility
//Use image's path to create NSData
let url:NSURL = NSURL(string : "urlHere")!
//Now use image to create into NSData format
let imageData:NSData = NSData.init(contentsOfURL: url)!
を作成する方法であるあなたは、ファイルマネージャから画像を見つける方法です
NSString *searchFilename = @"hello.png"; // name of the PDF you are searching for
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSDirectoryEnumerator *direnum = [[NSFileManager defaultManager] enumeratorAtPath:documentsDirectory];
NSString *documentsSubpath;
while (documentsSubpath = [direnum nextObject])
{
if (![documentsSubpath.lastPathComponent isEqual:searchFilename]) {
continue;
}
NSLog(@"found %@", documentsSubpath);
}
要求を送信するために、私は
var request = NSMutableURLRequest(URL: NSURL(string: url))
request.HTTPMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("application/json", forHTTPHeaderField: "Accept")
JSONリクエストを処理するためにNSMutableURLRequestを使用
HTTPBodyを準備するために、イメージをBase64文字列にエンコードする必要がありました。これは、次のようにして行われます。
var imageData = UIImageJPEGRepresentation(image, 0.9)
var base64String = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.fromRaw(0)!) // encode the image
これを実行した後、私はエンコードされた画像を適切なパラメータで辞書に入れました。私はそれをHTTPBodyに割り当てたJSON表現にシリアル化しました。
var err: NSError? = nil
var params = ["image":[ "content_type": "image/jpeg", "filename":"test.jpg", "file_data": base64String]]
request.HTTPBody = NSJSONSerialization.dataWithJSONObject(params, options: NSJSONWritingOptions(0), error: &err)!
共有セッションオブジェクトを使用して要求を送信するタスクを作成しました。私はMutableURLRequestに変換できる要求モデルを作成しました。ここでどのように見えるかを見ることができます。
リクエストが完了すると、completionHandlerを介して渡されたブロックIが実行されます。そこから、私はその反応を評価することができました。それで、私は自分の携帯電話のカメラから撮った画像をサーバに送ることができました。
- 1. 私はASCII文字列に変換する必要がある文字列を、どのように変換する必要がありますか?
- 2. base64文字列をOpenCVと互換性のある画像に変換する
- 3. Base64文字列を画像の添付ファイルに変換する
- 4. Androidのbase64文字列を画像に変換する
- 5. 画像のbase64文字列を取得しようとしています
- 6. イメージをjavaのbase64文字列に変換するには?
- 7. base64文字列を画像ファイルに変換する方法はありますか?
- 8. 私はそのような文字列から数値を取得する必要があり、文字列
- 9. Ionic 2 - URLからbase64の文字列に変換する必要があります
- 10. 私は文字列から最初の文字を取得し、それを他の文字列のインデックスにする必要があります。
- 11. イメージのBase64 URLをエンコードする必要がありますか?
- 12. 文字列をcharArrayに変換する必要はありますか?
- 13. ビットマップ画像をバイト配列に変換し、文字列.howを使ってこの文字列をそのビットマップ画像に再度変換できますか? Webサービスに画像を転写し、再びそれを取得するとき
- 14. 私は、文字列にバイトを変換する私は、これは文字列のバイトに変換する必要があります#
- 15. Base64文字列をビットマップまたはイメージに変換するXamarinまたはAndroid
- 16. base64文字列をjavaのサーバー側のイメージに変換する
- 17. 変換は私が働いているサイトを持っており、それがユーザーのプロフィール画像をアップロードするimgur APIを使用していますが、それは私が持っている機能を使用することをBASE64にする必要があるのBase64
- 18. イメージをbase64に変換するJavaの文字列
- 19. リスト<WebElement>を文字列の文字列配列に変換する必要があります
- 20. 変換マウスは、私が球を持っていると私は、マウスを変換する必要があり
- 21. Base64文字列に画像を変換するコードが動作しないのはなぜですか?
- 22. base64文字列をjavascriptで画像に変換
- 23. AndroidのBase64では、私は3.30メガバイトのサイズの画像を持っている私は、サーバーに画像を送信する必要が画像
- 24. どのようにしてbase64文字列をbase64文字列に変換できますか?
- 25. JWTをbase64文字列としてJSONに配置する必要がありますか?
- 26. bs4.element.Tagの一部を選択するには、文字列に変換する必要がありますか?
- 27. は、コンポーネントの入力プロパティを設定し、それは私が文字列の配列を受け取るコンポーネントを持っていますが、内部的に私がfooの配列を持っている必要があります
- 28. 文字列内の "単語"の後に文字列を取得する必要があります。#
- 29. 16進文字列をbase64に変換しますか?
- 30. JS:文字列を直接文字列に変換する必要があります。
あなたはすでに試したことを何でも見せてもらえますか –
この質問はあまりにも曖昧です。あなたが試したいくつかのコードが必要です。 –