Android java.lang.IllegalArgumentException: no hay campo de caracteres 'exponencial' en android 2.3

Quiero utilizar el sistema de archivos para almacenar y recuperar los datos. Mi código está funcionando bien en la última versión como android 4.1 y 4.4. Pero no funciona y da error en android 2.3. Escribo el objeto de otra clase y el objeto es Arraylist y también leo el objeto de la misma clase. Por favor, ayúdame. Gracias por adelantado.

Mi clase se da a continuación.

package com.app.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; import java.text.NumberFormat; import java.util.HashSet; import java.util.LinkedHashSet; import java.util.Map.Entry; import java.util.Set; import android.content.Context; import android.util.Log; public final class StorageHelper { public static Set<String> rec_news = new LinkedHashSet<String>(); public StorageHelper() { super(); } public static void writeObject(Context context, String key, Object object) throws IOException, ClassNotFoundException { FileOutputStream fos = context.openFileOutput(key, Context.MODE_PRIVATE); ObjectOutputStream oos = new ObjectOutputStream(fos); /*NumberFormat f = NumberFormat.getInstance(loc); if (f instanceof DecimalFormat) { ((DecimalFormat) f).setDecimalSeparatorAlwaysShown(true); }*/ //DecimalFormatSymbols s = new DecimalFormatSymbols() oos.writeObject(object); // error on this line for android 2.3 //object is Arraylist oos.close(); fos.close(); } public static Object readObject(Context context, String key) throws IOException, ClassNotFoundException { FileInputStream fis = context.openFileInput(key); ObjectInputStream ois = new ObjectInputStream(fis); Object object = ois.readObject(); return object; } } 

Error

  01-22 11:29:36.967: E/AndroidRuntime(6733): FATAL EXCEPTION: main 01-22 11:29:36.967: E/AndroidRuntime(6733): java.lang.IllegalArgumentException: no char field 'exponential' 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.EmulatedFields.put(EmulatedFields.java:459) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.EmulatedFieldsForDumping.put(EmulatedFieldsForDumping.java:83) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.text.DecimalFormatSymbols.writeObject(DecimalFormatSymbols.java:591) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invokeNative(Native Method) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invoke(Method.java:507) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1219) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:1062) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeFields(ObjectOutputStream.java:1008) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.text.DecimalFormat.writeObject(DecimalFormat.java:1215) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invokeNative(Native Method) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invoke(Method.java:507) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1219) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:1143) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:413) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1241) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1205) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:1143) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:413) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1241) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.util.ArrayList.writeObject(ArrayList.java:651) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invokeNative(Native Method) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invoke(Method.java:507) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1219) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1575) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1847) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1689) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1653) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.app.utils.StorageHelper.writeObject(StorageHelper.java:46) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.app.home.NewsListView.processData(NewsListView.java:359) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.app.home.NewsListView.access$4(NewsListView.java:314) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.app.home.NewsListView$NewsByIDTask.onPostExecute(NewsListView.java:563) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.app.home.NewsListView$NewsByIDTask.onPostExecute(NewsListView.java:1) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.os.AsyncTask.finish(AsyncTask.java:417) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.os.AsyncTask.access$300(AsyncTask.java:127) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:429) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.os.Handler.dispatchMessage(Handler.java:99) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.os.Looper.loop(Looper.java:130) 01-22 11:29:36.967: E/AndroidRuntime(6733): at android.app.ActivityThread.main(ActivityThread.java:3701) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invokeNative(Native Method) 01-22 11:29:36.967: E/AndroidRuntime(6733): at java.lang.reflect.Method.invoke(Method.java:507) 01-22 11:29:36.967: E/AndroidRuntime(6733): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteI 

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.