我在媒体播放器中创建了一个搜索功能,该功能使用列表框输出数据,当用户点击我希望播放该歌曲的歌曲时。但是,当我因某种原因选择一首歌时,我得到两个黑色斜线而不是一个。请帮忙。我已经尝试过更换它们了。
string path = @"C:\Users\Username\Music\";
path = path.Replace(@"\\", @"\");
string selectedsong, filetoplay;
selectedsong = listBox1.SelectedItem.ToString();
filetoplay = path + selectedsong + ".mp3";
Form1.wplayer.URL = filetoplay;
我目前正在获得的是C:\\用户\\用户名\\音乐\\ Song.mp3,因此该歌曲无法播放
答案 0 :(得分:1)
它在变量值中显示两个反斜杠,因为\被转义。如果将变量值打印到控制台,则应该发现它只有一个反斜杠。
答案 1 :(得分:1)
尝试使用Path.Combine
P.S。单\是"逃脱标志"并与#34;特殊字符串一起使用"例如:" \ t"是" tab"和" \ n"是"新行",这意味着,当你想发布" \"在你的字符串中,你必须发布" \"。 P.2.2当你创造"路径"使用" Patch.Combine"。
答案 2 :(得分:1)
代码中的Replace
无效,因为字符串中没有双反斜杠...正如其他人已经指出的那样,它只是调试器可视化的问题所以你可以复制它例如,在代码中使用它。
所以,如果你这样做:
你看到那里有双反斜杠,当然它不在实际的字符串中。看看你在控制台中得到了什么:
我的建议是,通过运行以下方法模拟双击所选文件:
System.Diagnostics.Process.Start(filetoplay);
它应该打开你的默认MP3播放器。我认为由于文件丢失,格式错误或其他原因,它会给你一个错误。如果它播放,则错误出现在代码的播放器部分,您可以不再担心双斜线。 :)