質問

私は初めて内部ストレージを使用していますが、私の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);

    }

}
役に立ちましたか?

解決

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

それが役立つことを願っています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top