1

実行時にいくつかの文字列値を配列リストに格納します。アプリケーションが閉じたら、配列リストのデータを別の場所に保存して、次にアプリケーションを起動したときにデータを開いて取得できるようにします。これを行うためのいくつかの可能な方法は何ですか?

4

2 に答える 2

1

ファイルを使用ReadingWritingたり、ファイルを使用したり、Windowsレジストリに値を保存したりできます。ファイルからの読み取り/ファイルへの書き込みには、以下を使用します。

StreamReader sr = new StreamReader(@"C:/store.dll"); //for reading
StreamWriter sw = new StreamWriter(@"C:/store.dll"); //for writing

これが基本です。これに関する2つのすばらしい記事があります:

  1. ファイルからの赤字
  2. ファイルへの書き込み

簡単なゲームのハイスコアを保存するためにこれを使用しました。:)

これは、Windowsレジストリを使用するための優れたチュートリアルです。

于 2012-07-24T17:00:49.790 に答える
0

SerializeArrayListを作成してディスクに書き込み、後でファイルとDeserializeそれをオブジェクトにロードすることができます。

    public static XDocument Serialize<T>(T objectIn, Type[] extraTypes)
    {
        try
        {
            var target = new XDocument();
            XmlSerializer s = extraTypes != null ? new XmlSerializer(objectIn.GetType(), extraTypes) : new XmlSerializer(objectIn.GetType());
            s = extraTypes != null
                ? new XmlSerializer(objectIn.GetType(), extraTypes)
                : new XmlSerializer(objectIn.GetType());

            var writer = target.CreateWriter();

            s.Serialize(writer, objectIn);

            writer.Close();
            return target;
        }
        catch (Exception ex)
        {
            throw new Exception(string.Format("Could not serialize object: {0}", ex.Message));
        }
    }

    public static T Deserialize<T>(XDocument xDocument, string defaultNamespace)
    {
        XmlSerializer s = new XmlSerializer(typeof(T), defaultNamespace);

        T result = (T)s.Deserialize(xDocument.CreateReader());

        return result;
    }
于 2012-07-24T16:59:22.343 に答える