private void InputLrc_Click(object sender, RoutedEventArgs e) { // 选择文件 OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "Lrc|*.lrc|Text|*.txt|所有文件|*.*"; if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK) { LrcPath = dlg.FileName; Title = "Lrc Editor - " + dlg.FileName; LrcObject Lrc = new LrcObject(); LrcAdapter.ReadFromFile(ref Lrc, LrcPath); LrcHeaders = Lrc.LrcHeaders; DataRow dr = null; foreach (LrcLine line in Lrc.LrcLines) { dr = dt.NewRow(); dr[0] = Time2String(line.Time); dr[1] = line.Text; dt.Rows.Add(dr); } SetInfo.IsEnabled = true; } }
public void TestWriteMethod() { LrcObject lrc = new LrcObject(); lrc.LrcHeaders[(int)LrcHeader.Type.AR].Text = "AR"; lrc.LrcHeaders[(int)LrcHeader.Type.AL].Text = "AL"; lrc.LrcHeaders[(int)LrcHeader.Type.BY].Text = "BY"; lrc.LrcHeaders[(int)LrcHeader.Type.TI].Text = "TI"; lrc.LrcHeaders[(int)LrcHeader.Type.OFFSET].Text = "OFFSET"; lrc.LrcLines.Add(new LrcLine(new TimeSpan(0, 0, 0, 0, 0), "This is a test.")); LrcAdapter.WriteToFile(ref lrc, @"..\..\..\LrcLib\TestWrite.lrc"); }
private void FormatSaveFunc(string path) { // if (DataView.Items.Count == 0) return; List <LrcLine> Lines = new List <LrcLine>(); foreach (DataRow dr in dt.Rows) { Lines.Add(LrcLine.Pause("[" + dr[0] + "]" + dr[1])[0]); } LrcObject lrc = new LrcObject(); lrc.LrcHeaders = this.LrcHeaders; lrc.LrcLines = Lines; LrcAdapter.WriteToFile(ref lrc, path); }
public void TestReadMethod() { LrcObject lrc = new LrcObject(); LrcAdapter.ReadFromFile(ref lrc, @"..\..\..\LrcLib\TestRead.lrc"); Console.WriteLine("AR:\t{0}", lrc.LrcHeaders[(int)LrcHeader.Type.AR].Text); Console.WriteLine("AL:\t{0}", lrc.LrcHeaders[(int)LrcHeader.Type.AL].Text); Console.WriteLine("BY:\t{0}", lrc.LrcHeaders[(int)LrcHeader.Type.BY].Text); Console.WriteLine("TI:\t{0}", lrc.LrcHeaders[(int)LrcHeader.Type.TI].Text); Console.WriteLine("OFFSET:\t{0}", lrc.LrcHeaders[(int)LrcHeader.Type.OFFSET].Text); Console.WriteLine("Time\tText"); foreach (LrcLine line in lrc.LrcLines) { Console.WriteLine("{0}\t{1}", LrcLine.TimeToString(line.Time), line.Text); } }