示例#1
0
        public static void save_gamestate( ClassResourceManager manager, ClassString filename,
            ClassString content)
        {
            #if WINDOWS
              IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForDomain();
            #else
              IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication();
            #endif

              IsolatedStorageFileStream outfile = null;
              outfile = storage.OpenFile( filename.data, System.IO.FileMode.Create );

              String data = content.data;
              int count = data.Length;
              for (int i=0; i<count; ++i)
              {
            outfile.WriteByte( (byte) data[i] );
              }
              outfile.Close();
        }
示例#2
0
        public static ClassString load_data_file( ClassResourceManager manager, ClassString filename )
        {
            try
              {
            String cs_filename = filename.data;

            int slash_pos = cs_filename.LastIndexOf('/');
            int other_slash_pos = cs_filename.LastIndexOf('\\');
            if (slash_pos == -1
              || (other_slash_pos != -1 && other_slash_pos < slash_pos))
            {
              slash_pos = other_slash_pos;
            }
            if (slash_pos != -1)
            {
              cs_filename = cs_filename.Substring( slash_pos + 1 );
            }
            cs_filename = "data/" + cs_filename;

            if (!cs_filename.StartsWith("data/")) cs_filename = "data/" + cs_filename;
            Stream infile = TitleContainer.OpenStream(cs_filename);

            int count = (int) infile.Length;
            StringBuilder buffer = new StringBuilder(count);

            for (int i=0; i<count; ++i)
            {
              buffer.Append( (char) infile.ReadByte() );
            }

            infile.Close();

            return new ClassString( buffer.ToString() );
              }
              catch (Exception)
              {
            throw new ClassFileNotFoundError(filename);
              }
        }
示例#3
0
        public static ClassString load_gamestate( ClassResourceManager manager, ClassString filename )
        {
            #if WINDOWS
              IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForDomain();
            #else
              IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication();
            #endif
              try
              {
            IsolatedStorageFileStream infile;
            infile = storage.OpenFile(filename.data, System.IO.FileMode.Open);

            int count = (int)infile.Length;
            StringBuilder buffer = new StringBuilder(count);

            for (int i = 0; i < count; ++i)
            {
              buffer.Append( (char)infile.ReadByte() );
            }

            infile.Close();

            return new ClassString( buffer.ToString() );
              }
              catch (Exception)
              {
            throw new ClassFileNotFoundError(filename);
              }
        }
示例#4
0
 public static void delete_gamestate( ClassResourceManager manager, ClassString filename )
 {
     #if WINDOWS
       IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForDomain();
     #else
       IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication();
     #endif
       try
       {
     storage.DeleteFile(filename.data);
       }
       catch (Exception err)
       {
       }
 }