Мне нужно сделать кнопку, чтобы она перемещала определенный файл на внешний накопитель. Я установил манифест, чтобы он мог записывать в External Storage, но я не могу найти код для записи определенного файла для записи во внешнее хранилище.Android перемещает файл на внешнее устройство с помощью кнопки
ответ
Убедитесь, что следующие разрешения при записи/чтения внешней памяти в вашем AndroidManifest.xml:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
называется так:
copyExt("/storage/emulated/0/obb/Orange.txt","");
//turn String path names into File descriptors
public void copyExt (String pathInternal, String pathExternal) {
File fInternal = new File (pathInternal);//pathInternal must exist
// File fExternal = new File (pathExternal);//pathExternal must exist
String filename=path.substring(pathInternal.lastIndexOf("/")+1);
File fExternal = new File(Environment.getExternalStorage().getAbsolutePath()+"/filename");
copyFile(fInternal,fExternal);
}
//make it static so we can re-use it, in a Utils class
public static void copyFile(File src, File dst) throws IOException
{
try
{
FileChannel inChannel = new FileInputStream(src).getChannel();
FileChannel outChannel = new FileOutputStream(dst).getChannel();
inChannel.transferTo(0, inChannel.size(), outChannel);
}
finally
{
if (inChannel != null)
inChannel.close();
if (outChannel != null)
outChannel.close();
}
}
АЛЬТЕРНАТИВА
public static boolean copyFile(String from, String to) {
try {
int bytesum = 0;
int byteread = 0;
File oldfile = new File(from);
if (oldfile.exists()) {
InputStream inStream = new FileInputStream(from);
FileOutputStream fs = new FileOutputStream(to);
byte[] buffer = new byte[1444];
while ((byteread = inStream.read(buffer)) != -1) {
bytesum += byteread;
fs.write(buffer, 0, byteread);
}
inStream.close();
fs.close();
}
return true;
} catch (Exception e) {
return false;
}
}
Итак, если имя файла - Orange.txt, нужно сказать ... copyExt ("/storage/emulated/0/obb/"Orange.txt" optional/external-USB/obb "); – Hyphnx
Если файл находится в «/storage/emulated/0/obb/Orange.txt» (я заполняю второй аргумент для вас, так что передайте пустую строку), затем copyExt («/ storage/emulated/0/obb/Orange». текст" , ""); –
- 1. ошибка внешнее запоминающее устройство Android
- 2. Внешнее хранилище на android
- 3. Как обнаружить внешнее устройство в android
- 4. Detect съемную внешнее запоминающее устройство в Android
- 5. Push-файл на Android-устройство
- 6. iPhone Bluetooth - внешнее устройство
- 7. Как отправить данные на внешнее устройство
- 8. Android аварии screenrecorder при записи на внешнее устройство хранения
- 9. Устройство (Android) обратное нажатие кнопки с помощью Ionic2/angular2
- 10. Анимация Android перемещает макет, но не кнопки
- 11. Запись ArrayList объектов на внешнее устройство хранения
- 12. JFugue 5 внешнее миди устройство
- 13. внешнее исполнениеClick() на android
- 14. Перемещение установленных приложений на Android на внешнее хранилище
- 15. Программно нажав файл apk на устройство Android
- 16. Android загружает файл с настольного ПК на Android-устройство
- 17. Windows cmd переместить файл на устройство Android
- 18. Внешнее хранилище Android
- 19. Push-читаемый файл на Android-устройство
- 20. Разрешение на внешнее хранилище Android
- 21. Как перенести файл Sqlite на Android-устройство?
- 22. iphone/ipad VGA, внешнее устройство Дисплей
- 23. Android-клавиатура перемещает вкладки
- 24. Запись файлов на внешнее хранилище в Android с ошибкой
- 25. ytsdk: Как изменить стандартное расположение загрузки на внешнее устройство хранения
- 26. Android 6.0 - Загрузите файл на внешнее хранилище, не спрашивая разрешения
- 27. Устройство рыскания на Android
- 28. Android перемещает предметы с ускорением
- 29. Как найти внешнее устройство через терминал?
- 30. записать изображение на внешнее запоминающее устройство в андроиде
Используйте 'getExternalFilesDir()' или связанные методы в 'Context' или' getExternalStoragePublicDirectory() 'на' Environment', чтобы получить объект «Файл», указывающий на корневую папку на внешнем хранилище. Оттуда это всего лишь стандартный ввод/вывод файлов Java (создайте объект «Файл» на основе этого корня в определенном месте, откройте «FileInputStream» и «FileOutputStream», скопируйте байты и т. Д.). – CommonsWare