0

初めて内部ストレージを使用していますが、openFileOutput でエラーが発生します。これを機能させる方法はわかりませんが、FileOutputStream が削除されている場合、以下の方法は完全に機能します。ありがとうございました!

public void Addition(View view) {

    int num1 = numberone.getText().toString().trim().length();
    int num2 = numbertwo.getText().toString().trim().length();
    String numone = numberone.getText().toString();
    String numtwo = numbertwo.getText().toString();

    if(num1 == 0 || num2 == 0){
    TextView value = (TextView)findViewById(R.id.answer);
    value.setText("Numbers not entered");
    }
    else if(numone.equals("+") || numtwo.equals("+") || numtwo.equals("-") || numone.equals("-")){
        TextView value = (TextView)findViewById(R.id.answer);
        value.setText("Please enter numbers");
    }
    else{

answer = Float.parseFloat(numberone.getText().toString()) + Float.parseFloat(numbertwo.getText().toString());;

TextView value = (TextView)findViewById(R.id.answer);
value.setText("Your sum is " + answer);
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);

    }

}
4

1 に答える 1

2

クラスが Context サブクラスを拡張しない場合は、Context インスタンス (Activity、Serviceなど) を渡して openFileInput を呼び出す必要があります。また、java.io.FileNotFoundException をキャッチするか、スロー宣言をメソッドに追加する必要があります。

それが役に立てば幸い。

于 2014-02-26T06:25:27.907 に答える