Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 5961187
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 22, 20262026-05-22T18:55:47+00:00 2026-05-22T18:55:47+00:00

This is my first attempt at serializing/deserializing objects on any platform and, to put

  • 0

This is my first attempt at serializing/deserializing objects on any platform and, to put it mildly, I’m confused.

After implementing Serializable to my game object I output it to a file thus:

public void saveGameState(){


    ByteArrayOutputStream bos = new ByteArrayOutputStream(); 

    try { 


        ObjectOutput out = new ObjectOutputStream(bos); 
          out.writeObject(theGame);//theGame is an instance of the custom class                  
                                          //TGame which stores game info.

          byte[] buf = bos.toByteArray(); 

          FileOutputStream fos = this.openFileOutput(filename,                      
                   Context.MODE_PRIVATE);
          fos.write(buf);
          fos.close(); 
        } catch(IOException ioe) { 
          Log.e("serializeObject", "error", ioe); 


        } 
        File f =this.getDir(filename, 0);
        Log.v("FILE",f.getName());    
}

This seems to work, in that I get no exceptions raised. I can only know for sure when I deserialize it. Which is where things go pear shaped.

public God loadSavedGame(){
    TGame g=null;
    InputStream instream = null;
    try {
        instream = openFileInput(filename);
    } catch (FileNotFoundException e) {

        e.printStackTrace();
        return null;
    }
     try {
        ObjectInputStream ois = new ObjectInputStream(instream);

         try {
            g= (TGame) ois.readObject();
            return g;
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            return null;
        }
     } catch (StreamCorruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        return null;
    }
          }

I got the basis of this code from here Android Java — Deserializing a file on the Android platform and tried to modify it for my app. When running I get

 05-31 23:30:45.493: ERROR/copybit(1279): copyBits failed (Invalid argument)

When the output should be loaded and the saved game start up from when it was saved.
Any help would be appreciated.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-22T18:55:48+00:00Added an answer on May 22, 2026 at 6:55 pm

    The error you’ve shown is not at all related to serialization: its actually a video display error. I’d suggest looking at the object BEFORE you serialize to make sure its not null, and I’d also suggest serializing to a file on the SD card to make sure you actually had data output (so use new FileOutputStream("/mnt/sdcard/serializationtest") as the output stream and new FileInputStream("/mnt/sdcard/serializationtest") as the input stream) while you are debugging; you can switch back to the context methods after it works, but make sure your sdcard is plugged in while you are doing this.

    Finally, modify your logging to look like this:

    try {
            ObjectInputStream ois = new ObjectInputStream(instream);
    
             try {
                g= (TGame) ois.readObject();
                return g;
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                android.util.Log.e("DESERIALIZATION FAILED (CLASS NOT FOUND):"+e.getMessage(), e);
                e.printStackTrace();
                return null;
            }
         } catch (StreamCorruptedException e) {
                android.util.Log.e("DESERIALIZATION FAILED (CORRUPT):"+e.getMessage(), e);
            // TODO Auto-generated catch block
            e.printStackTrace();
            return null;
        } catch (IOException e) {
                android.util.Log.e("DESERIALIZATION FAILED (IO EXCEPTION):"+e.getMessage(), e);
            // TODO Auto-generated catch block
            e.printStackTrace();
            return null;
        }
    

    and see what error gets returned. I expect the serialization is failing somehow.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

First attempt to use this cool site - after searching for 2 hours: So
This is my first attempt at a php script after a few weeks of
this if my first attempt at using streaming for WCF, and I am struggling
Because this is my first attempt at an extension method that seems quite useful
This is pretty strange (admitedly, this is my first attempt with python / sqlite),
I'm writing an application using DDD techniques. This is my first attempt at a
Using Dozer to map two objects, I have: /** /* This first class uses
hi this is my first attempt at JavaScript: the following function is used to
First of all, this is my first attempt at a silverlight app and it's
To preface, this is my first attempt at MVVM... I buy it, I'm just

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.