如何在 Android 中将字节数组写入文件?

2022-09-03 04:38:49

这是我创建文件的代码。

public void writeToFile(byte[] array) 
{ 
    try 
    { 
        String path = "/data/data/lalallalaa.txt"; 
        FileOutputStream stream = new FileOutputStream(path); 
        stream.write(array); 
    } catch (FileNotFoundException e1) 
    { 
        e1.printStackTrace(); 
    } 
} 

当我尝试通过调用路径将文件发送到服务器时String path = "/data/data/lalallalaa.txt";

我收到此 logcat 错误消息:

03-26 18:59:37.205: W/System.err(325): java.io.FileNotFoundException: /data/data/lalallalaa.txt

我不明白为什么它找不到一个“据说”已经创建的文件。


答案 1

我认为您最好添加FileOutputStream的关闭功能以获得清晰的代码

它完美地工作在我

try {
    if (!file.exists()) {
        file.createNewFile();
    }
    FileOutputStream fos = new FileOutputStream(file);
    fos.write(bytes);
    fos.close();
} catch (Exception e) {
    Log.e(TAG, e.getMessage());
}

答案 2

是否确实已创建文件?

尝试添加以下内容:

File file = new File(path);
if (!file.exists()) {
  file.createNewFile();
}