У меня есть Uri в моем приложении Android, и я хотел бы скопировать файл, представленный им, в то же место назначения, но с другим именем.
Например, если мой файл 'test. txt 'находится на внешнем хранилище, как я могу получить test.txt_copy в том же месте?
Вот что я сделал:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
startActivityForResult(intent, 44444);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (44444 == requestCode) {
if (null != data) {
final Uri uri = data.getData();
if (null != uri) {
try {
final BufferedInputStream bis = new BufferedInputStream(getContentResolver().openInputStream(uri));
final int fileSize = bis.available();
final byte[] rawFile = new byte[fileSize];
int read = bis.read(rawFile, 0, fileSize);
bis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}