Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/47: Рейтинг темы: голосов - 47, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 10.10.2017
Сообщений: 12

Сохранить изображение в SQLite

25.12.2017, 00:18. Показов 9112. Ответов 6

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Есть приложение с БД. Помимо прочего я загружаю изображение в ImageView из галереи. Необходимо его сохранить в базе. Как это реализовать? Доставать путь и записывать его строкой?
Очень хотелось бы простых примеров.
Заранее спасибо.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.12.2017, 00:18
Ответы с готовыми решениями:

Сохранить фотографию из SQLite
Всем привет. Каким образом можно вытащить картинку из базы данных. То есть пользователь видит перед собой ListView в котором данные из БД,...

Сохранить изображение в SQLite
Здравствуйте форумчане. До сего дня писал клиент-серверные приложения в связке Qt и SQLite. Хранимые данные представляли собой типичную...

Сохранить/сохранить как изображение
Всем привет. Написал программу, с помощью которой можно рисовать изображения, однако возникла сложность, не получается реализовать команду...

6
8 / 8 / 12
Регистрация: 16.05.2014
Сообщений: 151
25.12.2017, 21:37
Лучший ответ Сообщение было отмечено ShingoT как решение

Решение

ShingoT, на Toster ru нашел, ссылка не отправляется.

в формате Base64 можешь сохранить в database. Вот пример :

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//конвертируем Bitmap на Base64 
public String convertToBase64(Bitmap bitmap) {
        ByteArrayOutputStream os = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.PNG,100,os);
        byte[] byteArray = os.toByteArray();
        return Base64.encodeToString(byteArray, 0);
    }
 
//и наоборот
public Bitmap convertToBitmap(String base64String) {
        byte[] decodedString = Base64.decode(base64String, Base64.DEFAULT);
        Bitmap bitmapResult = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
        return bitmapResult;
    }
1
33 / 35 / 9
Регистрация: 03.02.2017
Сообщений: 141
25.12.2017, 21:43
можно ещё сохранить ввиде строки с помощью гсона)
1
 Аватар для yatvin
56 / 61 / 26
Регистрация: 10.04.2017
Сообщений: 211
25.12.2017, 22:37
можно еще массив байтов ну это вообще не очень)
0
Автор FAQ
Автор FAQ
 Аватар для REALIST07
644 / 199 / 21
Регистрация: 11.06.2010
Сообщений: 1,024
27.12.2017, 15:02
Сделайте папку приложения, а в нем папку например Images,а в БД храните названия картинок и при чтении доставайте из вашей папки+ название картинки, учитывайте, что если вы сохраняете во внутренние папки приложения,то при его удалении удалятся все ваши данные, чтобы этого избежать вы можете создавать папку в корне внутренней памяти,но при этом вам нужно вручную удалять/добавлять картинки
1
0 / 0 / 0
Регистрация: 10.10.2017
Сообщений: 12
28.12.2017, 17:01  [ТС]
Спасибо, сделал.
0
0 / 0 / 0
Регистрация: 29.12.2017
Сообщений: 1
30.12.2017, 19:01
а вы не думали сохранять в БД ссылки на изображения? так облегчится вес приложения. ведь в конце концов картинок у вас станет много и Вы ну просто захломляете приложение лишним весом.

Я правда сам это еще не смог реализовать но примерно понял куда копать.

Добавлено через 20 часов 22 минуты
Я тут покапался в инете. нашел готовую сборку. привинтил к ней в бД колонку URL содержащую. и чото на этом у меня усё. что делать?

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import android.annotation.TargetApi;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.ImageView;
import java.util.Locale;
 
public class DictionaryActivity extends ActionBarActivity {
 
    private TextView wordMeaning;
    // добавил вот эту строку ниже.
    private TextView photo;
    private ImageView photo1;
 
    private TextToSpeech convertToSpeech;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_dictionary);
 
        Intent intent = getIntent();
        Bundle bundle = intent.getExtras();
        int dictionaryId = bundle.getInt("DICTIONARY_ID");
        int id = dictionaryId + 1;
 
        TextView word = (TextView)findViewById(R.id.word);
        wordMeaning = (TextView)findViewById(R.id.dictionary);
        // добавил вот эту строки ниже.
        photo = (TextView)findViewById(R.id.dictionary1);
        photo1 = (ImageView)findViewById(R.id.dictionary2);
 
        Button textToSpeech = (Button)findViewById(R.id.button);
 
        DbBackend dbBackend = new DbBackend(DictionaryActivity.this);
        QuizObject allQuizQuestions = dbBackend.getQuizById(id);
 
        word.setText(allQuizQuestions.getWord());
        wordMeaning.setText(allQuizQuestions.getDefinition());
        // добавил вот эту строки ниже.
        photo.setText(allQuizQuestions.getPhoto());
        // тут явно чтото я не так написал. а вот что не могу разобрать пока что.
        photo1.setImageURI(Uri.parse(""));
 
 
 
        textToSpeech.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                final String convertTextToSpeech = wordMeaning.getText().toString();
                convertToSpeech = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
                    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
                    @Override
                    public void onInit(int status) {
                        if(status != TextToSpeech.ERROR){
                            convertToSpeech.setLanguage(Locale.US);
                            convertToSpeech.speak(convertTextToSpeech, TextToSpeech.QUEUE_FLUSH, null, null);
                        }
                    }
                });
            }
        });
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_dictionary, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
    @Override
    protected void onPause() {
        if(convertToSpeech != null){
            convertToSpeech.stop();
            convertToSpeech.shutdown();
        }
        super.onPause();
    }
}
кому интересно стучите. скину в тему готовую сборку со своими не доработками. может вместе сможем разобраться.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.12.2017, 19:01
Помогаю со студенческими работами здесь

Вывести изображение из sqlite в listbox
Добрый всем вечер. Подскажите пожалуйста, как можно вывести изображения из бд sqlite в listbox в wpf ???

Сохранить изображение на Си
Как записать изображение в файл, например BMP? Я взял его из буфера обмена и оно у меня содержится в HBITMAP. Можете показать как это...

Сохранить изображение
Здравствуйте. Вопрос вот какой. Имеется TImage в него загружена картинка. Картинка может быть больше, чем компонент, может быть меньше, но...

Сохранить изображение
Почему не сохраняется изображение? Помогите пожалуйста!:gsad: Dim t, t1, y, y1 Private Sub Command1_Click() t = 0: y = 0 For t1 = 0...

Сохранить изображение из бд
День добрый всем, появилась задача: Имеется бд с ~20 000 новостями. Структура бд: CREATE TABLE IF NOT EXISTS `news` ( `id`...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru