コード例 #1
0
ファイル: DataStructure.cs プロジェクト: Facepalm38/gt2tools
 public virtual void Import(string filename)
 {
     using (FileStream infile = new FileStream(filename, FileMode.Open, FileAccess.Read))
     {
         ImportStructure(infile);
         FileNameCache.Add(Name, filename);
     }
 }
コード例 #2
0
ファイル: Regulations.cs プロジェクト: Facepalm38/gt2tools
 public override void Import(string filename)
 {
     if (!FileNameCache.Cache.ContainsKey(Name))
     {
         FileNameCache.Add(Name, "None");
     }
     base.Import(filename);
 }
コード例 #3
0
ファイル: Regulations.cs プロジェクト: Facepalm38/gt2tools
 public override void Dump()
 {
     if (!FileNameCache.Cache.ContainsKey(Name))
     {
         FileNameCache.Add(Name, "None");
     }
     base.Dump();
 }
コード例 #4
0
ファイル: DataStructure.cs プロジェクト: Facepalm38/gt2tools
        public virtual void Dump()
        {
            string filename = CreateOutputFilename(RawData);

            using (FileStream outfile = new FileStream(filename, FileMode.Create, FileAccess.Write))
            {
                ExportStructure(RawData, outfile);
                FileNameCache.Add(Name, filename);
            }
        }
コード例 #5
0
ファイル: Utils.cs プロジェクト: Facepalm38/gt2tools
        public object ConvertFromString(string text, IReaderRow row, MemberMapData memberMapData)
        {
            int stringNumber = FileNameCache.Get(Name, text);

            if (Name == nameof(Regulations) || Name == nameof(TireSize) || Name == nameof(TireCompound))
            {
                return((byte)stringNumber);
            }
            else if (Name == nameof(EnemyCars))
            {
                return((uint)stringNumber);
            }
            else
            {
                return((ushort)stringNumber);
            }
        }
コード例 #6
0
        public override void Dump()
        {
            string filename = CreateOutputFilename(RawData);

            using (TextWriter output = new StreamWriter(File.Create(filename), Encoding.UTF8))
            {
                using (CsvWriter csv = new CsvWriter(output))
                {
                    csv.Configuration.RegisterClassMap <TMap>();
                    csv.Configuration.QuoteAllFields = true;
                    csv.WriteHeader <TStructure>();
                    csv.NextRecord();
                    csv.WriteRecord(Data);
                    if (CacheFilename)
                    {
                        FileNameCache.Add(Name, filename);
                    }
                }
            }
        }
コード例 #7
0
 public override void Import(string filename)
 {
     try
     {
         using (TextReader input = new StreamReader(filename, Encoding.UTF8))
         {
             using (CsvReader csv = new CsvReader(input))
             {
                 csv.Configuration.RegisterClassMap <TMap>();
                 csv.Read();
                 Data = csv.GetRecord <TStructure>();
                 if (CacheFilename)
                 {
                     FileNameCache.Add(Name, filename);
                 }
             }
         }
     }
     catch (Exception exception)
     {
         throw new Exception($"Could not import CSV: {filename}", exception);
     }
 }
コード例 #8
0
ファイル: Utils.cs プロジェクト: Facepalm38/gt2tools
        public string ConvertToString(object value, IWriterRow row, MemberMapData memberMapData)
        {
            int cacheIndex = int.Parse(value.ToString());

            return(FileNameCache.Get(Name, cacheIndex));
        }