das Verzeichnis DirDefaultExternal zeigt nicht (zwangsläufig) auf die externe SD-Karte, daher findest Du die Datei auch nicht.
Als Beispiel hier mein Samsung-Gerät:
DirDefaultExternal zeigt auf /mnt/sdcard
Die externe SD liegt aber unter /mnt/sdcard/external_sd
Gib in Deinem Programm einfach mal das Verzeichnis DirDefaultExternal auf einem Label aus. Dann schau Dir mit einem File-Explorer Deinen konkreten Pfadnamen für die externe SD an.