private string ReadNextLine(ref int Cursor, ChangeBufferFunction ChangeBuffer) { if ((Cursor == this.m_CharsRead) && (ChangeBuffer() == 0)) { return(null); } StringBuilder builder = null; do { int num3 = this.m_CharsRead - 1; for (int i = Cursor; i <= num3; i++) { char ch = this.m_Buffer[i]; if ((Conversions.ToString(ch) == "\r") | (Conversions.ToString(ch) == "\n")) { if (builder != null) { builder.Append(this.m_Buffer, Cursor, (i - Cursor) + 1); } else { builder = new StringBuilder(i + 1); builder.Append(this.m_Buffer, Cursor, (i - Cursor) + 1); } Cursor = i + 1; if (Conversions.ToString(ch) == "\r") { if (Cursor < this.m_CharsRead) { if (Conversions.ToString(this.m_Buffer[Cursor]) == "\n") { Cursor++; builder.Append("\n"); } } else if ((ChangeBuffer() > 0) && (Conversions.ToString(this.m_Buffer[Cursor]) == "\n")) { Cursor++; builder.Append("\n"); } } return(builder.ToString()); } } int charCount = this.m_CharsRead - Cursor; if (builder == null) { builder = new StringBuilder(charCount + 10); } builder.Append(this.m_Buffer, Cursor, charCount); }while (ChangeBuffer() > 0); return(builder.ToString()); }
private string PeekNextDataLine() { string str; ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.IncreaseBufferSize); this.SlideCursorToStartOfBuffer(); this.m_PeekPosition = 0; do { str = this.ReadNextLine(ref this.m_PeekPosition, changeBuffer); }while (this.IgnoreLine(str)); return(str); }
private string ReadNextDataLine() { string str; ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.ReadToBuffer); do { str = this.ReadNextLine(ref this.m_Position, changeBuffer); this.m_LineNumber += 1L; }while (this.IgnoreLine(str)); if (str == null) { this.CloseReader(); } return(str); }
public string ReadLine() { if ((this.m_Reader == null) | (this.m_Buffer == null)) { return(null); } ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.ReadToBuffer); string str = this.ReadNextLine(ref this.m_Position, changeBuffer); if (str == null) { this.FinishReading(); return(null); } this.m_LineNumber += 1L; return(str.TrimEnd(new char[] { '\r', '\n' })); }
private string ReadNextLine(ref int Cursor, ChangeBufferFunction ChangeBuffer) { if ((Cursor == this.m_CharsRead) && (ChangeBuffer() == 0)) { return null; } StringBuilder builder = null; do { int num3 = this.m_CharsRead - 1; for (int i = Cursor; i <= num3; i++) { char ch = this.m_Buffer[i]; if ((Conversions.ToString(ch) == "\r") | (Conversions.ToString(ch) == "\n")) { if (builder != null) { builder.Append(this.m_Buffer, Cursor, (i - Cursor) + 1); } else { builder = new StringBuilder(i + 1); builder.Append(this.m_Buffer, Cursor, (i - Cursor) + 1); } Cursor = i + 1; if (Conversions.ToString(ch) == "\r") { if (Cursor < this.m_CharsRead) { if (Conversions.ToString(this.m_Buffer[Cursor]) == "\n") { Cursor++; builder.Append("\n"); } } else if ((ChangeBuffer() > 0) && (Conversions.ToString(this.m_Buffer[Cursor]) == "\n")) { Cursor++; builder.Append("\n"); } } return builder.ToString(); } } int charCount = this.m_CharsRead - Cursor; if (builder == null) { builder = new StringBuilder(charCount + 10); } builder.Append(this.m_Buffer, Cursor, charCount); } while (ChangeBuffer() > 0); return builder.ToString(); }
private string ReadNextDataLine() { string str; ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.ReadToBuffer); do { str = this.ReadNextLine(ref this.m_Position, changeBuffer); this.m_LineNumber += 1L; } while (this.IgnoreLine(str)); if (str == null) { this.CloseReader(); } return str; }
public string ReadLine() { if ((this.m_Reader == null) | (this.m_Buffer == null)) { return null; } ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.ReadToBuffer); string str = this.ReadNextLine(ref this.m_Position, changeBuffer); if (str == null) { this.FinishReading(); return null; } this.m_LineNumber += 1L; return str.TrimEnd(new char[] { '\r', '\n' }); }
private string PeekNextDataLine() { string str; ChangeBufferFunction changeBuffer = new ChangeBufferFunction(this.IncreaseBufferSize); this.SlideCursorToStartOfBuffer(); this.m_PeekPosition = 0; do { str = this.ReadNextLine(ref this.m_PeekPosition, changeBuffer); } while (this.IgnoreLine(str)); return str; }