1
私はサーバーに送信しているNSInputStreamを持っていて、アップロード中にアップロードしている画像を表示したいと思います。メソッドはシングルトンにあり、それはそのNSInputStreamを受け取ります。そのストリームを読んでUIImageに変換する方法はありますか?NSInputStreamをUIImageに変換する方法
私はこれで試しましたが、運はありません。私のミスはどこですか?
var buffer = [UInt8](count:1024, repeatedValue: 0)
thumbnailStream.open()
if (thumbnailStream.hasBytesAvailable){
let len : Int = inputStream.read(&buffer, maxLength: buffer.count)
var pictureData = NSData(bytes: buffer, length: len)
var imagess = UIImage(data: pictureData)!
self.headerProgress.imageView.image = imagess
print("Data of image = \(pictureData.length)")
}else{
print("No bytes")
}
ありがとうございます!
デバッガを使用しましたか?投稿したコードを実行すると実際に何が起こりますか? – rmaddy
変数 'pictureData'はバッファカウント' 1024'の長さです。 countの値を変更し、 'pictureData'の長さをcountの値に変更し、ランタイムが失敗し、コードの' pictureData'行が強調表示されます。また、メディアが正常にサーバーにアップロードされているため、このメソッドに画像データを送信していることを確認しています。 @rmaddy – Srdjan
最初の1024バイトだけでなく、すべてのデータを入力ストリームから読み込む必要があります。 – rmaddy