名称不能以“.”字符(十六进制值 0x00)开头。 行 1,位置 2。

jinxinwei1986 2011-07-16 09:23:01
搞不懂为什么会出现这样的异常,如果从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"]);
}
}
}
...全文
1299 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
long803579803 2013-12-09
  • 打赏
  • 举报
回复

可能是红色箭头所指的位置名称取错
h339566 2012-10-16
  • 打赏
  • 举报
回复
遇到类似问题,编码改后还是同样错误,求解
huangwenquan123 2011-07-16
  • 打赏
  • 举报
回复
xml帖部分出来看看!
dalmeeme 2011-07-16
  • 打赏
  • 举报
回复
应该是编码的问题,改成:
byte[] bytes = Encoding.UTF8.GetBytes(dataset.GetXml());

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧