Java 尝试在Android活动中执行简单命令时出错
我正在学习使用Java编写的Android应用程序读写简单文件。但我无法解决这个初始错误!我想我之所以会出现这个错误是因为Java 尝试在Android活动中执行简单命令时出错,java,android,Java,Android,我正在学习使用Java编写的Android应用程序读写简单文件。但我无法解决这个初始错误!我想我之所以会出现这个错误是因为这个代替了上下文。应用程序正在成功编译,但在我的设备中安装后未打开 我没有尝试太多,但我在这里提供代码。我试图通过编辑文本视图接受一个简单的文本,然后使用保存按钮将其保存到Android中的一个文件中 package com.example.filemaketest; import androidx.appcompat.app.AppCompatActivity; imp
这个代替了上下文。应用程序正在成功编译,但在我的设备中安装后未打开
我没有尝试太多,但我在这里提供代码。我试图通过编辑文本视图接受一个简单的文本,然后使用保存按钮将其保存到Android中的一个文件中
package com.example.filemaketest;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import java.io.File;
import java.io.FileOutputStream;
public class MainActivity extends AppCompatActivity {
String filename = "Testing-app-file.txt";
File path = this.getFilesDir();
// File file = new File(path, filename);
// FileOutputStream outputStream;
public void save(View view) {
EditText edit = (EditText) findViewById(R.id.infoText);
String info = edit.getText().toString();
Log.i("info", info);
Toast.makeText(this, info + " button Pressed", Toast.LENGTH_LONG).show();
Toast.makeText(this, " Saving", Toast.LENGTH_LONG).show();
// try {
// outputStream = openFileOutput(filename, this.MODE_PRIVATE);
// outputStream.write(info.getBytes());
// outputStream.close();
// } catch (Exception e) {
// e.printStackTrace();
// }
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
我首先想到的是这句话:
public class MainActivity extends AppCompatActivity {
String filename ="Testing-app-file.txt";
File path= this.getFilesDir(); // <<< This line
你犯了什么错误?您能将Logcat提供的碰撞信息添加到您的问题中吗?谢谢您的帮助和宝贵的时间。这对我来说很有效,至少我的应用程序没有崩溃,也没有错误。但我无法确认文件是否在我的android手机中创建。你能给我一些解决方案吗?@AryanAgarwal这可能是最好的提问,以保持当前问题的整洁,作为将来可能遇到此错误的其他人的参考。
public class MainActivity extends AppCompatActivity {
String filename ="Testing-app-file.txt";
File path;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
path = this.getFilesDir();
}
...