gpt4 book ai didi

java - 将文件从目录复制到另一个,具有文件和目录的路径

转载 作者:行者123 更新时间:2023-11-29 09:49:25 25 4
gpt4 key购买 nike

在我的 android 应用程序中,我想将文件从一个目录复制到另一个目录,我有文件 filePath 的路径,并且在我的目录中有目录 dirPath 的路径必须复制文件。我尝试了很多方法,但没有任何帮助,有些方法只能制作一些空的(0 kb)文件,其名称与我的文件名称不同。所以请帮助:)

这是代码的一部分,如果对你有帮助,我有两个按钮用于 Gallery 和 Camera ,我必须从那里选择图像

Button btnCam = (Button) dialog.findViewById(R.id.btncamera);
btnCam.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
dialog.cancel();
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, 2500);

}
});
//end of camera button


Button btnGal = (Button) dialog.findViewById(R.id.btngalary);
btnGal.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
dialog.cancel();
Intent i = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, RESULT_LOAD_IMAGE);
}
});

和 Activity 结果

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);

if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data)
{
Uri selectedImage = data.getData();
url = new String(selectedImage.toString());
//here I must copy file with path `selectedImage` and replace it in
// directory with path `currentDir.hetPath()`
}
if (requestCode == 2500)
{
Bitmap photo = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(photo);
//here I must do the same thing above
}
}

最佳答案

我找到了一些方法,在我的 Activity 结果中我必须调用 copyFile(String, String) 函数,这里是正文

public static boolean copyFile(String from, String to) {
try {
File sd = Environment.getExternalStorageDirectory();
if (sd.canWrite()) {
int end = from.toString().lastIndexOf("/");
String str1 = from.toString().substring(0, end);
String str2 = from.toString().substring(end+1, from.length());
File source = new File(str1, str2);
File destination= new File(to, str2);
if (source.exists()) {
FileChannel src = new FileInputStream(source).getChannel();
FileChannel dst = new FileOutputStream(destination).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
}
}
return true;
} catch (Exception e) {
return false;
}
}

关于java - 将文件从目录复制到另一个,具有文件和目录的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12496732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com