Когда вы вызываете openFileInput, вы пытаетесь открыть файл, связанный с данным контекстом. Поскольку вы создаете экземпляр HelperClass без предоставления ему Context, он пытается открыть ваш файл, используя нулевой контекст (отсюда и исключение нулевого указателя). Что вы можете сделать, это заставить ваш метод fileReader()
принять объект Context, а затем вызвать openFileInput с использованием контекста провайдера.
Ex.
public void fileReader(Context context) //change the return type if you need
{
//your code
//..
FileInputStream fos = context.openFileInput(filename);
}
Чтобы назвать это
hc.fileReader(context); //get the context using "this" or getContext() depending on where you're calling it
Кроме того, вы можете сделать fileReader статическим методом, чтобы вам не нужно было создавать экземпляр HelperClass только для его использования.
public static void fileReader(Context context) //change the return type if you need
{
//your code
//..
FileInputStream fos = context.openFileInput(filename);
}
Затем позвоните, используя
HelperClass.fileReader(context);