我正在制作音乐播放器.它有两种形式; 一个是你演奏音乐的主要区域.第二种形式有一个CheckedListBox,您可以在其中选择所需的mp3.当我单击一个按钮时,它会将选择保存在.txt文件中,以便我可以在第一种形式中访问它们,在那里我将字符串放入音乐播放器的路径中以查找文件.
这是我的第二种形式的代码,我将选定的歌曲保存为.txt文件.
private void selectbtn_Click(object sender, EventArgs e)
{
if (File.Exists(@"C:\Users\Me\Desktop\JAM_MACHINE\JAMS\record.txt"))
{
File.WriteAllText(@"C:\Users\Me\Desktop\JAM_MACHINE\JAMS\record.txt", String.Empty);
}
string[] checkedtitles = new string[checkedListBox1.CheckedItems.Count];
for (int ii = 0; ii < checkedListBox1.CheckedItems.Count; ii++)
{
checkedtitles[ii] = checkedListBox1.CheckedItems[ii].ToString();
}
string selectedSongs = String.Join(Environment.NewLine, checkedtitles);
songRecord.writeRecord(selectedSongs); //I initialised the class containing streamwriter/reader, and called it songRecord
this.Close();
}
Run Code Online (Sandbox Code Playgroud)
问题是,每当我关闭程序并再次打开它时,我都无法重写/清除.txt文件.它只是添加到现有文件.有什么我不对的吗?
这是我的streamreader/writer代码.我很确定我在跑步后也关闭它,但也许有人可以弄清楚出了什么问题:
namespace songss
{
class DataRecord
{
public void writeRecord(string line)
{
StreamWriter sw = null;
try
{
sw = new StreamWriter(@"C:\Users\Me\Desktop\JAM_MACHINE\record.txt", true);
sw.WriteLine(line);
}
catch …Run Code Online (Sandbox Code Playgroud)