bez dziedziczenia nie mam dostępu do tej metody :/
Tylko że jak dziedziczysz po activity to po to żeby zaimplementować własne activity (a activity służy nie do tego co chcesz zrobić tylko do wyświetlenia ekranu aplikacji). Jak dziedziczysz po Activity to obowiązkowo przeciążasz metodę onCreate(), bez tego ani rusz. Ale jak napisałem wcześniej - Activity nie służy do tego co chcesz osiągnąć.
Błąd dostajesz dlatego że openFileOutput() jest metodą klasy Context, po której activity dziedziczy. Oczywiście nie wpadaj na pomysł żeby zaraz dziedziczyć po Context'. Rozwiązanie jest na 2 sposoby:
1) jeśli plik ma być otwarty z katalogu prywatnego aplikacji - wtedy warto użyć metody openFileOutput/openFileInput
2) jeśli plik ma być poza katalogiem prywatnym to użyj zwykłych fukncji Javy do operacji na plikach.
Jeśli chcesz zrobić koniecznie jak w punkcie 1) to:
1) w swojej klasie XmlConfig zaimplementuj konstruktor który przyjmuje jako parametr Context i zachowaj sobie ten Context w zmiennej w klasie XmlConfig.
2) w metodzie saveConfig() wywołaj context.openFileOutput.
Tutaj przykładowa implementacja:
public class XmlConfig {
private Context context;
public XmlConfig(Context context) {
this.context = context;
}
public void saveConfig()
{
String FILE_NAME="config_class.xml";
String data_save="testowy string z klasy";
try {
FileOutputStream fos = context.openFileOutput(FILE_NAME,0);
fos.write(data_save.getBytes());
fos.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
XmlConfig xc = new XmlConfig(Activityname.this);
xc.saveConfig();