Я пытался, чтобы сохранить изображение до parse.com. Мне нужно преобразовать его в массив байтов. То, как я решил попробовать, это использовать apache commons-io. Он работает неправильно. Это мой фрагмент кода;java.io.FileNotFoundException: /file/path.jpg open failed: ENOENT (Нет такого файла или каталога)
private void saveImage() throws IOException {
// TODO Auto-generated method stub
InputStream header = new FileInputStream("/ClashMMA/res/drawable-hdpi/beatdown.jpg");
ParseFile file = new ParseFile(toByteArray(header));
try{
file.save();
} catch (ParseException e) {
e.printStackTrace();
}
ParseObject displayImage = new ParseObject("displayImage");
displayImage.put("header", file);
try{
displayImage.save();
} catch (ParseException e1){
e1.printStackTrace();
}
}
private byte[] toByteArray(InputStream header) throws IOException {
// TODO Auto-generated method stub
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
int l;
byte[] data = new byte[1024];
while ((l = header.read(data, 0, data.length)) != -1) {
buffer.write(data, 0, l);
}
buffer.flush();
return buffer.toByteArray();
}
И моя ошибка в этом;
java.io.FileNotFoundException: /ClashMMA/res/drawable-hdpi/beatdown.jpg: open failed: ENOENT (No such file or directory)
Но я уверен, что файл существует, потому что я пошел в свой каталог файлов (в затмении), правой нажал, и нажал на Copy Qualified Name
. Которая по существу копирует путь к файлу. Я пробовал несколько других путей, как сразу после моего компьютера, и в моей папке src
. Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно? Почему он не будет читать файл, когда на самом деле он есть? Подробные объяснения, пожалуйста.
У меня была эта проблема. Я удалил папку, созданную программно, и создал ее вручную, и проблема решена !!! – breceivemail