Java Android 10不保存文本文件

Java Android 10不保存文本文件,java,android,Java,Android,我生成了一个文本文件并试图保存它。它不仅在安卓Q上有效,在安卓9、8和7上也有效。当我检查安卓10上是否存在该文件时,它可以工作,但我在设备上没有。我这样做: private void createFile(上下文ctx、字符串文件名、字符串文本){ 文件filesDir=null; if(android.os.Build.VERSION.SDK\u INT>=android.os.Build.VERSION\u code.KITKAT){ filesDir=ctx.getExternalFil

我生成了一个文本文件并试图保存它。它不仅在安卓Q上有效,在安卓9、8和7上也有效。当我检查安卓10上是否存在该文件时,它可以工作,但我在设备上没有。我这样做:

private void createFile(上下文ctx、字符串文件名、字符串文本){
文件filesDir=null;
if(android.os.Build.VERSION.SDK\u INT>=android.os.Build.VERSION\u code.KITKAT){
filesDir=ctx.getExternalFilesDir(Environment.DIRECTORY\u文档);
}
断言filesDir!=null;
如果(!filesDir.exists()){
if(filesDir.mkdirs()){
}
}
File File=新文件(filesDir,fileName+“.txt”);
试一试{
如果(!file.exists()){
如果(!file.createNewFile()){
抛出新IOException(“无法创建文件”);
}
}
OutputStream os=新文件OutputStream(文件);
字节[]数据=text.getBytes();
写(数据);
os.flush();
os.close();
Log.e(“TAG”,“File Path=“+File.toString());
if(file.exists()){
Log.e(“d”、“d”);
}
File fileTemp=新文件(File.getPath());
FileInputStream notes_xml=新的FileInputStream(fileTemp);
byte fileContent[]=新字节[(int)notes_xml.available()];
//信息将是缓冲区中的内容。
notes_xml.read(fileContent);
String strContent=新字符串(fileContent);
Log.e(“内容”,strContent);
notes_xml.close();
}捕获(IOE异常){
e、 printStackTrace();
}
}

if(!file.exists()){if(!file.createNewFile()){抛出新IOException(“无法创建文件”);}}
删除该代码。不需要它,因为文件将由
newfileoutputstream()
创建。有例外吗?然后创建文件。在哪里以及如何查找该文件?
if(filesDir.mkdirs()){}
。这应该是:
if(!filesDir.mkdirs()){Toast(…无法创建目录…”);return;}
}`在catch块中放置Toast()以通知用户。@blackapps我没有看到这个Toast a filesDir.mkdirs()是真的请在这里调整您的代码,以便我们知道我们在谈论什么。重复:
您在哪里以及如何查找文件?
为什么不回答?