因此,我在C#中制作音乐播放器。当用户打开一首歌曲时,我希望它保存到一个xml文件(它保存它的路径,名称和持续时间)。每当我尝试将值发送到执行保存的库时,我都会收到此错误。C#Xml - 无效的名称字符; ''字符不能包含在名称中
MusicLibraryWriter.DatabaseWriter+MyException: System.ArgumentException: Invalid name character in 'Song file path'. The ' ' character, hexadecimal value 0x20, cannot be included in a name.
这里是我的代码:
public string addToDatabasedataBaseInfo(songInfo dataToWrite)
{
try
{
string newSongPath = dataToWrite.songFilePath;
XmlWriter databaseWriter = XmlWriter.Create("databaseEdit.xml");
databaseWriter.WriteStartDocument();
databaseWriter.WriteStartElement("Songs");
databaseWriter.WriteElementString("Song file path", newSongPath);
databaseWriter.WriteElementString("Song duration", dataToWrite.songDuration.ToString());
databaseWriter.WriteEndElement();
databaseWriter.WriteEndDocument();
databaseWriter.Close();
//databaseWriter.Dispose();
mergeDataBase();
return "Success";
}
catch (Exception e)
{
throw new MyException(e.ToString());
}
}
dataToWrite.songFilePath在使用时包含空字符串? – 2014-11-01 10:15:32
@MarvinSmit:那会很好 - 它是元素*名称*这是问题所在。 – 2014-11-01 10:19:14
Doh。很显然我错过了它。 :) XML元素名称中不允许使用空格。 – 2014-11-01 10:22:05