// ヘッダ private void ReadHeader(MmlFileReader m) { var Pos = m.GetPosition(); m.StepNextCharacter(); var Name = m.ReadName(); VerboseWriteLine($"--- Header: {Name} {Pos} ---"); List <string> Parameter = new List <string>(); bool SkipSeparator = false; while (!m.IsEof()) { var ct = SkipSpaceAndFetch(m); if (m.IsLineEnd(ct)) { break; // 改行は終了 } if (SkipSeparator && m.IsSeparator(ct)) { ct = m.ReadNextType(); } if (m.IsSpace(ct)) { ct = m.ReadNextType(); } if (m.IsLineEnd(ct)) { break; // 改行は終了 } if (ct != MmlCharactorType.GeneralChanacter) { Error.Add(ErrorData.Type.UnknownCharacterUsed); return; } string t; if (m.IsQuote()) { t = m.ReadQuote(); if (t == null) { Error.Add(ErrorData.Type.QuoteEndNotFound); return; } } else { t = m.ReadUntilNext(); } SkipSeparator = true; Parameter.Add(t); } Header.Set(Song, Name, Parameter); }