Domanda

Sto usando la memoria interna per la prima volta e il mio openFileOutput mi sta dando un errore.Non sono sicuro di come farlo funzionare, ma il metodo seguente funziona perfettamente se il FileOutputStream viene rimosso.Grazie!

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);

    }

}
È stato utile?

Soluzione

Se la classe non estende una sottoclasse di contesto, è necessario passare un'istanza di contesto (un'attività, un servizio, ecc) per chiamare openFileInput.Inoltre è necessario catturare java.io.FileNotFoundException o aggiungere la dichiarazione throws al metodo.

Spero che aiuti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top