2017-08-06 16 views
0

自分のアプリイメージをbase64に変換してギャラリーに表示しません。私は様々なテクニックを試しました。イメージはzipファイルからのものなので、その時点ではバイト配列です。バイト配列のサイズを変更すると、base64の長さが変わります。適切なバイト配列サイズは何ですか?そして、base64でエンコードされた画像もうまくいきません。 プライマリコードは です。encodedImage = Base64.encodeToString(buffer、Base64.DEFAULT); バッファはバイト配列(102400) であり、イメージも含まれています。 画像は7キロバイトのファイルであり、出力は400キロバイトAndroid Image to Base64

+0

Base64 Androidクラスを使用できます。 String encodedImage = Base64.encodeToString(byteArrayImage、Base64.DEFAULT); –

+0

私はあなたの答えを私の質問に含めました。それは私のためには機能しません。 –

+0

Wtong溶液。ギャラリーに画像が表示されないようにするには、そのディレクトリに.nomediaファイルを作成し、インデクサーがそれをスキップします –

答えて

0

あなたはBase64に画像を変換するには、次の機能を試すことです。

public void toStringImage(Bitmap bmp) { 
    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
    bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos); 
    byte[] imageBytes = baos.toByteArray(); 
    String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT); 
} 

機能上Bitmap画像を取り、Base64 encoded stringに変換します。これは私のプロジェクトで働いており、これもあなたに役立つことを願っています。