投稿者 たかくん  (社会人) 投稿日時 2012/7/4 11:13:30
こんにちは、YuOさんありがとうございます。
一応コードを乗せてみます。
コメントはテキストファイルとしてやっていたのを残してるだけなので気になされないで下さい。
このメソッドは保存ですが問題は読み込みの時にどうファイルの末尾の探知をするかです。
   ''' <summary>
    ''' 棋譜データ保存
    ''' </summary>
    ''' <param name="filename">ファイル名</param>
    ''' <remarks></remarks>
    Public Sub Save(ByVal filename As String)
        If (Me.RePlayModeBoolean) Then
            TestClass.OutPutSystemFlow("RePlayClass->Save()")
            Dim count As SByte = 0
            'Dim save As New System.IO.StreamWriter(filename, False, System.Text.Encoding.Default)
            Dim save As New FileStream(filename, FileMode.Create)
            Dim binalyfarmat As New BinaryFormatter
            Try
                For Each log As Stone(,) In Me.ReplayStoneBordList
                    'For Each stone As Stone In log
                    'save.Write(stone.LogicalPoint.X.ToString + ",")
                    'save.Write(stone.LogicalPoint.Y.ToString + ",")
                    'save.Write(stone.StoneRectangle.Width.ToString + ",")
                    'save.Write(stone.StoneRectangle.Height.ToString + ",")
                    'save.Write(stone.State.ToString + ",")
                    'save.Write(stone.IsReach.ToString + ",")
                    'save.WriteLine(stone.IsClearStone.ToString)
                    binalyfarmat.Serialize(save, log)
                    'Next
                    binalyfarmat.Serialize(save, Me.NowPutStoneList(count))
                    'save.Write(Me.NowPutStoneList(count).LogicalPoint.X.ToString + ",")
                    'save.Write(Me.NowPutStoneList(count).LogicalPoint.Y.ToString + ",")
                    'save.Write(Me.NowPutStoneList(count).StoneRectangle.Width.ToString + ",")
                    'save.Write(Me.NowPutStoneList(count).StoneRectangle.Height.ToString + ",")
                    'save.Write(Me.NowPutStoneList(count).State.ToString + ",")
                    'save.Write(Me.NowPutStoneList(count).IsReach.ToString + ",")
                    'save.WriteLine(Me.NowPutStoneList(count).IsClearStone.ToString + ",")
                    count += 1
                Next
                save.Dispose()
                save.Close()
            Catch ex As Exception
                Me.TestClass.SystemLog("RePlayClassClass->Save()" + ex.Message)
            End Try
        Else
            MessageBox.Show(KeyWordNotGameEnd, "五目並べ", MessageBoxButtons.OK, MessageBoxIcon.Warning)
        End If
    End Sub