コード例 #1
0
ファイル: IOManager.cs プロジェクト: kondranton/GaloisFields
        static public string CreateTableFile(FieldTable fieldTable, TableSaveMode savingMode, FieldTable.FieldTableType tableType)
        {
            string filenamePrefix = "GFTable";
            string fileExtension  = "";
            string wordSeparator  = "";
            string sumMark        = "Sum";

            switch (savingMode)
            {
            case TableSaveMode.CSV:
                fileExtension = ".csv";
                wordSeparator = ";";
                break;

            case TableSaveMode.TXT:
                fileExtension = ".txt";
                wordSeparator = " ";
                break;
            }

            string path     = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
            string fileName = "";

            if (tableType == FieldTable.FieldTableType.Multiplication)
            {
                fileName = filenamePrefix + fieldTable.Divisor.IntegerRepresentation + fileExtension;
            }
            else
            {
                fileName = filenamePrefix + sumMark + fieldTable.Size + fileExtension;
            }

            writer = new StreamWriter(path + "\\" + fileName);

            using (writer)
            {
                //Index of the last element in the line
                int tableBorderIndex = fieldTable.Size - 1;
                for (int i = 1; i < tableBorderIndex; i++)
                {
                    writer.Write(i + wordSeparator);
                }
                writer.Write(tableBorderIndex + "\n");

                int[,] tableContent = fieldTable.Content(tableType);
                for (int i = 1; i < fieldTable.Size; i++)
                {
                    for (int j = 1; j < tableBorderIndex; j++)
                    {
                        writer.Write(tableContent[i, j] + wordSeparator);
                    }
                    writer.Write(tableContent[i, tableBorderIndex] + "\n");
                }
            }
            return(fileName);
        }
コード例 #2
0
        public void Setup()
        {
            tableSaveMode = new TableSaveMode();

            array = SaveModesTestsCommon.GetArray();
        }