Страницы

Поиск по вопросам

понедельник, 24 февраля 2020 г.

Как создать папку?

#java #android


Вот у меня такой вопрос... 

Я хочу сделать 5 снимков с камеры и чтоб эти снимки сохранились в одной папке которая
динамически должна создаться на CD карте. Я не до конца понимаю будет ли создаваться
папка, или файлы просто сохраниться где то на CD карте? 

Мне нужно, чтоб создавалась одна папка и туда все созранялось, чтоб я мог хранить
ссылку на эту папку и работать с ней(допустим удалять из нее все обьекты)

у меня есть вот такой код

private static class ImageSaver implements Runnable {

    private final Image mImage;
    private File mFile = new File(Environment.getExternalStorageDirectory(), "pic.jpg");

    public ImageSaver(Image image) {
        mImage = image;
    }

    @Override
    public void run() {
        ByteBuffer buffer = mImage.getPlanes()[0].getBuffer();
        byte[] bytes = new byte[buffer.remaining()];
        buffer.get(bytes);
        FileOutputStream output = null;
        try {
            output = new FileOutputStream(mFile);
            output.write(bytes);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            mImage.close();
            if (null != output) {
                try {
                    output.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

    


Ответы

Ответ 1



В вашем случае все картинки будут сохраняться в один файл. А именно в pic.jpg. Для начала создайте папку используя функцию mkdir(): File folder = new File(Environment.getExternalStorageDirectory() + File.separator + "pictures"); if (!folder.exists()) { folder.mkdir(); } обычно для сохранения картинок используют какие-то уникальные названия. Чаще всего это дата и время в имени файла + .jpg После всех операций создавайте новый файл, передав в его параметры значения, которые вы получили. Что-то типа такого : File mFile = new File(folder, currentDateAndTime + ".jpg");//currentDateAndTime - это строка, созданная из даты и времени, типа 2016-03-16-18-00 И не забудьте указать пермишн на запись файлов

Комментариев нет:

Отправить комментарий