„java.io.FileNotFoundException (Keine solche Datei oder kein solches Verzeichnis)“Android

Forum für diejenigen, die für Android programmieren
Guest
 „java.io.FileNotFoundException (Keine solche Datei oder kein solches Verzeichnis)“

Post by Guest »

Ich habe eine Klasse in meinem Projekt, um ein Bild hochzuladen und in meiner Datenbank zu speichern und es bei Erfolg lokal zu speichern. Das funktioniert und ich kann das Bild in einem benutzerdefinierten Ordner speichern, den ich auf meinem Android-Telefon erstellt habe.

In einer anderen Klasse versuche ich jedoch, ein Bild herunterzuladen Ich habe das Bild in Textform codiert und mit der oben verwendeten Methode lokal gespeichert, aber es funktioniert nicht mehr. Anscheinend kann ich den Ordner nicht erstellen.

Ich verstehe nicht, wie es in meiner anderen Klasse funktioniert hat und nicht in dieser
Ich habe versucht, meine Manifestdatei zu überprüfen und festzustellen, ob ich die erforderlichen Berechtigungen eingefügt habe und ob sie sich an den richtigen Stellen befinden

Code: Select all







...

[BEARBEITEN] Ok, ich habe versucht, das Leerzeichen in meinem Dateipfad zu entfernen, um zu überprüfen, ob das Leerzeichen wirklich das Problem verursacht hat, aber es hat immer noch nicht funktioniert

Code: Select all

File folder = new File(Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_DCIM) + File.separator + "TBSystem" + File.separator + patient_id + File.separator + "lab_result_" + sqlDateToString(result_date) + ".jpg");
Wie kommt es außerdem, dass es in meiner anderen Klasse mit dem Leerzeichen funktioniert und in dieser nicht? :(

Code: Select all

File folder = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DCIM) + File.separator + "TB System" + File.separator + patient_id);

if (!folder.exists()) {
folder.mkdirs();
}

folder = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DCIM) + File.separator + "TB System" + File.separator + patient_id + File.separator + "lab_result_" + result_date + ".jpg");

byte[] decodedBytes = Base64.decode(encoded_image, 0);
Bitmap imageBitmap = BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.length);

try (
FileOutputStream out = new FileOutputStream(folder)) {
imageBitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
} catch (IOException e) {
e.printStackTrace();
}

W/System.err: java.io.FileNotFoundException: /storage/emulated/0/DCIM/TB System/pat1/lab_result_2019-04-06.jpg (No such file or directory)
W/System.err:     at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:308)
at java.io.FileOutputStream.(FileOutputStream.java:238)
at java.io.FileOutputStream.(FileOutputStream.java:180)
at buenaventura.dorothy.tbmgmtapp.db_volley.VolleyDownloadRequest$1.onResponse(VolleyDownloadRequest.java:569)
at buenaventura.dorothy.tbmgmtapp.db_volley.VolleyDownloadRequest$1.onResponse(VolleyDownloadRequest.java:103)
at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:82)
at com.android.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:29)
at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:6981)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1445)

patient_id und result_date sind nur Zeichenfolgen. encoded_image ist ein Lontext

Ich muss in der Lage sein, den codierten Text, den ich heruntergeladen habe, in eine Bitmap umzuwandeln und ihn im benutzerdefinierten Ordner „TB System“ zu speichern, den ich voraussichtlich in DCIM finde . Ein weiterer Ordner sollte in TB System erstellt werden (d. h. pat1, pat2, pat3, ...) und die Bilder werden darin gespeichert.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post