Java 附加存储在data/data/com.package/files中的文件/
我想附加一个在中的文件 data/data/com.example.XXXX/files/THISFILE.txt 但是首先我应该将它导出到SD以便附加它, 我有下面的代码,但是没有创建hello.txt文件。。所以我无法连接它Java 附加存储在data/data/com.package/files中的文件/,java,android,private,Java,Android,Private,我想附加一个在中的文件 data/data/com.example.XXXX/files/THISFILE.txt 但是首先我应该将它导出到SD以便附加它, 我有下面的代码,但是没有创建hello.txt文件。。所以我无法连接它 public class exportar extends Activity { String from = "/data/data/com.example.XXXXXX/files/THISFILE.txt"; String to = "/sdcard/hello
public class exportar extends Activity {
String from = "/data/data/com.example.XXXXXX/files/THISFILE.txt";
String to = "/sdcard/hello.txt";
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;
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_SUBJECT,"XXX");
i.putExtra(Intent.EXTRA_TEXT , ("XXX"));
String file = "file://" + Environment.getExternalStorageDirectory()+"/hello.txt";
Uri uri = Uri.parse(file);
i.putExtra(Intent.EXTRA_STREAM, uri);
finish();
try {
startActivity(Intent.createChooser(i, "xxxx."));
} catch (android.content.ActivityNotFoundException ex) {
finish();
}
}
}
如有任何建议,将不胜感激
编辑1
我变了
String from = "/data/data/com.example.XXXXXX/files/THISFILE.txt";
String to = "/sdcard/hello.txt";
到
我之所以放置getDataDirectory,是因为它位于data/data/中,但如果它是n data/data/com.example.aa/files/THISFILE.txt,我不知道该怎么办
如果要将ruta_sd复制到sd的根目录中,则ruta_sd是正确的?从不硬编码路径,因为from和to在各种设备上都会失败。另外,永远不要使用字符串连接来构建路径-使用适当的文件构造函数,并在需要Uri时使用Uri.fromFile从文件创建Uri。始终对路径使用相同的值,而不是重建为文件。最后,您可能需要在完成编写后进行同步:我回答了我的问题,我将字符串更改为文件s现在可以了吗?我不知道如何设置文件的路径,你能帮我吗?
File ruta_data = Environment.getDataDirectory();
File from = new File(ruta_data.getAbsolutePath(), "com.example.aa/files/THISFILE.txt");
File ruta_sd = Environment.getExternalStorageDirectory();
File to = new File(ruta_sd.getAbsolutePath(), "Hello.txt");