【发布时间】:2016-06-22 21:17:44
【问题描述】:
我正在尝试将用户输入的字符串(称为 editServer)保存到内部文件中:
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
EditText server = (EditText) findViewById(R.id.editServer);
Log.i("Settings", server.getText().toString());
String filename = "ServerURL.txt";
String serverurl = server.getText().toString();
FileOutputStream outputStream;
try {
outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
outputStream.write(serverurl.getBytes());
Log.i("Write",serverurl+" saved to "+filename);
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
});
我的问题是之后我找不到这个文件。它在哪里? 我尝试使用 Android Studio 打开 Android 设备监视器,但找不到该文件夹。我尝试使用以下方法获取字符串:
fis = context.openFileInput("ServerURL.txt");
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader bufferedReader = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
sb.append(line);
}
return line;
但是它返回null,这让我相信我犯了一个错误。我是在正确创建文件还是我的代码有问题?
谢谢。
更新
Android 设备监视器 -> 文件浏览器可让您查看并找到您的文件所在的位置。
【问题讨论】:
-
“它在哪里?” -- 这取决于运行您的应用程序的用户帐户。而且,如果您在硬件上进行测试,则无论如何您都无法直接访问该位置,除非可能在有根设备上。见:commonsware.com/blog/2014/04/07/…
-
这是一个有根设备。我会检查链接,谢谢!
标签: android android-studio fileoutputstream internal-storage