public void Close() { Reset(); readState = enIniReadState.Closed; if (textReader != null) { textReader.Close(); } }
public bool Read() { bool result = false; if (readState != enIniReadState.EndOfFile || readState != enIniReadState.Closed) { readState = enIniReadState.Interactive; result = ReadNext(); } return(result); }
private bool ReadNext() { bool result = true; int ch = PeekChar(); Reset(); if (IsComment(ch)) { iniType = enItemType.Empty; ReadChar(); // consume comment character ReadComment(); return(result); } switch (ch) { case ' ': case '\t': case '\r': SkipWhitespace(); ReadNext(); break; case '\n': ReadChar(); break; case '[': ReadSection(); break; case -1: readState = enIniReadState.EndOfFile; result = false; break; default: ReadKey(); break; } return(result); }