Ich verwende unten Code, um Dateien in Android zu verschieben.Fehler beim Verschieben von Dateien in Android
public static void moveFile(String inputPath, String inputFile, String outputPath, String absolutePath) {
InputStream in = null;
OutputStream out = null;
try {
//create output directory if it doesn't exist
File dir = new File (outputPath);
if (!dir.exists())
{
dir.mkdirs();
}
in = new FileInputStream(inputPath + inputFile);
out = new FileOutputStream(outputPath + inputFile);
byte[] buffer = new byte[1024];
int read;
while ((read = in.read(buffer)) != -1) {
out.write(buffer, 0, read);
}
in.close();
in = null;
// write the output file
out.flush();
out.close();
out = null;
// delete the original file
new File(absolutePath).delete();
}
catch (FileNotFoundException fnfe1) {
Log.e("Moving file not found", fnfe1.getMessage());
}
catch (Exception e) {
Log.e("While Moving", e.getMessage());
}
Aber die meisten Zeiten zeigt es mir Fehler wie unten dargestellt:
Verschieben Datei nicht gefunden : /call_14-43-46_IN_+919737276726.amr (Read-only-Dateisystem)
Ich habe überprüft und die Datei, die verschoben werden soll, ist eine normale Datei und wird nicht nur gelesen, während sie von einem Call Recorder aufgezeichnet wird. Bitte helfen.
anzeigen verwenden, wie Sie diese Funktion aufrufen. Zeigen Sie den Wert der Parameter an. – greenapps
'dir.mkdirs();'. Überprüfen Sie den Rückgabewert, da das Verzeichnis möglicherweise nicht erstellt werden kann. Zeigen Sie in diesem Fall einen Toast auf den Benutzer an. Und zurück. Fahren Sie nicht fort, da es wenig Sinn macht, eine Datei in einem Verzeichnis zu erstellen, das nicht existiert. – greenapps