尝试从Android中的非默认文件夹打开文本文件
我正在将一个文件保存到Android中的一个非默认位置,并试图打开它以从中加载信息,但找不到指定文件路径的方法 下面是我如何保存文件 文件目录=新文件(路径+”/Android/data/com.etechtour/save_data/” 现在我已经成功地将文件保存到这个位置,但是当尝试访问它时,我无法找到任何可以设置加载文件路径的方法。我在网上到处搜索,除了使用默认的保存位置,似乎找不到任何有效的方法。下面是我如何尝试加载,但不是forceclosing就是获取空指针异常尝试从Android中的非默认文件夹打开文本文件,android,location,storage,default,Android,Location,Storage,Default,我正在将一个文件保存到Android中的一个非默认位置,并试图打开它以从中加载信息,但找不到指定文件路径的方法 下面是我如何保存文件 文件目录=新文件(路径+”/Android/data/com.etechtour/save_data/” 现在我已经成功地将文件保存到这个位置,但是当尝试访问它时,我无法找到任何可以设置加载文件路径的方法。我在网上到处搜索,除了使用默认的保存位置,似乎找不到任何有效的方法。下面是我如何尝试加载,但不是forceclosing就是获取空指针异常 try {
try
{
String filename = Environment.getExternalStorageDirectory().toString() + "/Android/data/com.etechtour/save_data/pumpItUpGas.txt";
InputStream in = openFileInput("pumpItUpGas.txt");
//FileReader fileReader = new FileReader(file);
//FileInputStream fileInput = new FileInputStream(path);
if (in != null)
//if (fileReader != null)
{
InputStreamReader temp = new InputStreamReader(in);
//InputStreamReader tmp = new InputStreamReader(in);
BufferedReader reader = new BufferedReader(temp);
StringBuffer buf = new StringBuffer();
while ((str = reader.readLine()) != null)
{
buf.append(str);
}
//fileInput.close();
in.close();
return str;
}
}
任何帮助都将不胜感激。感谢使用
FileInputStream
或FileReader
与您的File
对象一起使用,就像普通的Java I/O一样。您是说FileOutputStream(文件)允许您成功保存,而FileInputStream(文件)不允许您读取,使用相同的文件吗?是的,我正在保存到文件夹中“/Android/data/com.etechtour/save_data/”文件名为pumpItUpGas.txt,但在使用InputStream时,无法指定路径,因此我无法打开同一文件。。。
try
{
String filename = Environment.getExternalStorageDirectory().toString() + "/Android/data/com.etechtour/save_data/pumpItUpGas.txt";
InputStream in = openFileInput("pumpItUpGas.txt");
//FileReader fileReader = new FileReader(file);
//FileInputStream fileInput = new FileInputStream(path);
if (in != null)
//if (fileReader != null)
{
InputStreamReader temp = new InputStreamReader(in);
//InputStreamReader tmp = new InputStreamReader(in);
BufferedReader reader = new BufferedReader(temp);
StringBuffer buf = new StringBuffer();
while ((str = reader.readLine()) != null)
{
buf.append(str);
}
//fileInput.close();
in.close();
return str;
}
}