преобразовать данные изображения в байт-код, используя base64 encodein android - PullRequest
3 голосов
/ 30 декабря 2010

Я разрабатываю одно приложение, которое я использую для загрузки изображений в SDCard, получая из URI изображения, это преобразовать в байтовый массив, как я могу реализовать, я новый разработчик в Android, я сохраняю это изображение в байтовом массиве в базе данных, пожалуйста, перешлите какое-то решение ....

 startActivityForResult(new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), 1);
            }
  public void onActivityResult(int requestCode,int resultCode,Intent data)  
 {
 super.onActivityResult(requestCode, resultCode, data);
 if (resultCode == Activity.RESULT_OK) 
 {
 Uri selectedImage = data.getData();
 Cursor cur = PhotoImage.this.managedQuery(selectedImage, null, null, null, null);
 if(cur.moveToFirst())
 {
 long Length = cur.getLong(cur.getColumnIndex(ImageColumns.SIZE));
 try{
 String Image=Base64.encodeBytes(selectedImage.getPath().getBytes());
 Log.v("check",Image);
 byte[] bytedata = new byte[(int) Length];
 FileOutputStream fos=new FileOutputStream(Img);
 fos.write(bytedata[0]);
 fos.close();
   }
 catch (Throwable th)
 {}

вывод:

12-30 13:00:24.619: VERBOSE/check(773): L2V4dGVybmFsL2ltYWdlcy9tZWRpYS8y

это вывод на дисплей, я думаю, что он не преобразован в байтовый массив, пожалуйста, какое-то решение ..

1 Ответ

2 голосов
/ 30 декабря 2010

Этот код преобразует файл изображения в байты:

FileInputStream fin = c.openFileInput(path of file);
byte[] imageBytes = new byte[fin.available()];
fin.read(imageBytes);

положить это в try...catch()

Попробуйте и дайте мне знать, если вы спрашиваете то же самое или что-то еще.

...