/// <summary> /// Method to output the cuesheet into a single formatted string. /// </summary> /// <returns>The entire cuesheet formatted to specification.</returns> public override string ToString() { StringBuilder output = new StringBuilder(); foreach (string comment in Comments) { output.Append("REM " + comment + Environment.NewLine); } if (Catalog.Trim() != "") { output.Append("CATALOG " + Catalog + Environment.NewLine); } if (Performer.Trim() != "") { output.Append("PERFORMER \"" + Performer + "\"" + Environment.NewLine); } if (Songwriter.Trim() != "") { output.Append("SONGWRITER \"" + Songwriter + "\"" + Environment.NewLine); } if (Title.Trim() != "") { output.Append("TITLE \"" + Title + "\"" + Environment.NewLine); } if (File.Trim() != "" && FileType != "") { output.Append("FILE \"" + File + "\"" + " " + FileType.ToUpperInvariant() + Environment.NewLine); } if (CDTextFile.Trim() != "") { output.Append("CDTEXTFILE \"" + CDTextFile.Trim() + "\"" + Environment.NewLine); } for (int i = 0; i < m_Tracks.Count; i++) { output.Append(m_Tracks[i].ToString()); if (i != m_Tracks.Count - 1) { //add line break for each track except last output.Append(Environment.NewLine); } } return(output.ToString()); }