名称不能以“.”字符(十六进制值 0x00)开头。 行 1,位置 2。
搞不懂为什么会出现这样的异常,如果从xml文件中加载xml就没事?跪求解决方法?static void Main(string[] args)
{
DataSet dataset = new DataSet("dataset");
DataTable table = new DataTable("line");
table.Columns.Add("id");
table.Columns.Add("name");
table.Columns.Add("link");
for (int i = 0; i < 20; i++)
{
DataRow row = table.NewRow();
row["id"] = Convert.ToString(i);
row["name"] = "name" + Convert.ToString(i);
row["link"] = "article.aspx?id=" + Convert.ToString(i);
}
dataset.Tables.Add(table);
byte[] bytes = new UnicodeEncoding().GetBytes(dataset.GetXml());
MemoryStream stream = new MemoryStream(bytes);
DataSet dataset1 = new DataSet();
dataset1.ReadXml(stream);
foreach (DataTable table1 in dataset1.Tables)
{
foreach (DataRow row in table1.Rows)
{
Console.WriteLine("id={0}", row["id"]);
Console.WriteLine("name={0}", row["name"]);
Console.WriteLine("link={0}", row["link"]);
}
}
} --------------------编程问答-------------------- --------------------编程问答-------------------- 应该是编码的问题,改成:
byte[] bytes = Encoding.UTF8.GetBytes(dataset.GetXml());
--------------------编程问答-------------------- xml帖部分出来看看! --------------------编程问答-------------------- 遇到类似问题,编码改后还是同样错误,求解 --------------------编程问答--------------------
可能是红色箭头所指的位置名称取错
补充:.NET技术 , ASP.NET