Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Local Android save data

Discussion in 'Android' started by faez, Apr 4, 2012.

  1. faez

    faez

    Joined:
    Jan 17, 2012
    Posts:
    11
  2. misterkid

    misterkid

    Joined:
    Feb 15, 2012
    Posts:
    79
    You can use the FileStream or StreamReader etc if you code in c# in unity

    Rought example
     
  3. MicroEyes_old

    MicroEyes_old

    Joined:
    Jun 9, 2011
    Posts:
    188
    FAEZ,
    You can use these functions for perform what you want....


    public void writeStringToFile( string str, string filename )
    {
    #if !WEB_BUILD
    string path = pathForDocumentsFile( filename );
    FileStream file = new FileStream (path, FileMode.Create, FileAccess.Write);

    StreamWriter sw = new StreamWriter( file );
    sw.WriteLine( str );

    sw.Close();
    file.Close();
    #endif
    }


    public string readStringFromFile( string filename)//, int lineIndex )
    {
    #if !WEB_BUILD
    string path = pathForDocumentsFile( filename );

    if (File.Exists(path))
    {
    FileStream file = new FileStream (path, FileMode.Open, FileAccess.Read);
    StreamReader sr = new StreamReader( file );

    string str = null;
    str = sr.ReadLine ();

    sr.Close();
    file.Close();

    return str;
    }

    else
    {
    return null;
    }
    #else
    return null;
    #endif
    }


    public string pathForDocumentsFile( string filename )
    {
    if (Application.platform == RuntimePlatform.IPhonePlayer)
    {
    string path = Application.dataPath.Substring( 0, Application.dataPath.Length - 5 );
    path = path.Substring( 0, path.LastIndexOf( '/' ) );
    return Path.Combine( Path.Combine( path, "Documents" ), filename );
    }

    else if(Application.platform == RuntimePlatform.Android)
    {
    string path = Application.persistentDataPath;
    path = path.Substring(0, path.LastIndexOf( '/' ) );
    return Path.Combine (path, filename);
    }

    else
    {
    string path = Application.dataPath;
    path = path.Substring(0, path.LastIndexOf( '/' ) );
    return Path.Combine (path, filename);
    }
    }
     
    crumby_shirt, BradyIrv and AliAfshari like this.
  4. Raspilicious

    Raspilicious

    Joined:
    Jun 21, 2012
    Posts:
    24
    This worked perfectly for me, thank you so much!
     
  5. AliAfshari

    AliAfshari

    Joined:
    Sep 12, 2014
    Posts:
    13
    Awesome Code And Works Great