我正在编写一个应用程序,在我的Nexus 5上创建一个文件夹,然后在文件夹中写一个文本文件。
以上部分工作得很好。我正在使用以下代码编写:
创建文件夹:
File sdCard1 = Environment.getExternalStorageDirectory();
File dir = new File(sdCard1.getAbsolutePath() + "/SmsApp");
if (dir.isDirectory())
{
String[] children = dir.list();
for (int i = 0; i < children.length; i++)
{
new File(dir, children[i]).delete();
}
}
File sdCard = Environment.getExternalStorageDirectory();
directory = new File (sdCard.getAbsolutePath() + "/SmsApp");
directory.mkdirs();
将字符串写入文本文件。
public void writeToText(String texttosave)
{
File sdCard = Environment.getExternalStorageDirectory();
File logFile = new File(sdCard.getAbsolutePath() + "/SmsApp" + "/smsrawdata.file");
if (!logFile.exists())
{
try
{
logFile.createNewFile();
}
catch (IOException e)
{
e.printStackTrace();
}
}
try
{
BufferedWriter buf = new BufferedWriter(new FileWriter(logFile, true));
buf.append(texttosave);
buf.newLine();
buf.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
文本文件在我的手机上正常显示,但当我尝试访问手机上的同一文件夹时,我根本看不到该文件夹。
我认为对于Play商店中的其他app创建一个文件夹然后创建所有内容然后我可以在Windows资源管理器上看到它们是相同的。
我在代码部分做错了,因为它没有显示在我的电脑上,只能在我的手机上显示。我正在使用ES文件资源管理器查看手机上的文件。
如果其他人遇到同样的问题,请告诉我。
谢谢!
答案 0 :(得分:2)
您的电脑将与媒体商店就文件进行通信。不直接使用SD卡或外部存储器。如果媒体商店不知道您的文件,您的电脑无法看到它。你忘了告诉商店你创建了一个文件。对于每个新文件,您应该为该文件调用媒体扫描程序。你并不是第一个发生这种情况的人,因此多次报告这个问题。您只需添加几行代码即可轻松搜索此站点,以便在新文件上调用媒体扫描程序。如果关闭/打开设备,文件也很快就会知道。