在android上本地创建文件(不在SD卡上)
我遇到了一个问题,我试图在android emulator上本地创建一个文件,但是当我测试它时,文件存在,它不存在。我没有访问物理android设备的权限,因此我使用模拟器。 请注意,我不想将文件保存在SD卡上。我不太熟悉android的文件结构,所以如果我的代码没有意义,请原谅我。 这是我目前正在使用的代码,它不起作用:( 在android开发领域有足够经验的人能给我提供一些示例代码,或者给我指出正确的方向,这样我就可以让这个坏家伙工作了吗?在android上本地创建文件(不在SD卡上),android,eclipse,android-emulator,io,Android,Eclipse,Android Emulator,Io,我遇到了一个问题,我试图在android emulator上本地创建一个文件,但是当我测试它时,文件存在,它不存在。我没有访问物理android设备的权限,因此我使用模拟器。 请注意,我不想将文件保存在SD卡上。我不太熟悉android的文件结构,所以如果我的代码没有意义,请原谅我。 这是我目前正在使用的代码,它不起作用:( 在android开发领域有足够经验的人能给我提供一些示例代码,或者给我指出正确的方向,这样我就可以让这个坏家伙工作了吗? 编辑:当我说它不起作用时,我的意思是文件永远不会被
编辑:当我说它不起作用时,我的意思是文件永远不会被创建。如果你是Android文件存储新手,我建议你先读一读,然后开始-它应该用例子回答你的问题。谢谢你的回答。“使用内部存储”下面的代码似乎它可以工作。这是否允许我使用文件名(在本例中为“hello_文件”)引用该文件,以便在稍后阶段对该文件进行处理?如果您的意思是像访问项目资源中的文件一样访问该文件,则否。您应该始终通过其路径访问该文件。
EditText editText = (EditText) findViewById(R.id.editTextName);
String sName = editText.getText().toString();
editText = (EditText) findViewById(R.id.editTextEmail);
String sEmail = editText.getText().toString();
editText = (EditText) findViewById(R.id.editTextPostal);
String sPostal = editText.getText().toString();
File file = new File("/storage/new/test.txt");
FileOutputStream fos;
byte[] data = new String("Name: " + sName + " Subject: " + sEmail + " Question: " + sPostal ).getBytes();
OutputStream myOutput;
try {
myOutput = new BufferedOutputStream(new FileOutputStream(file,true));
myOutput.write(data);
myOutput.flush();
myOutput.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if(file.exists())
{
finish();
}