当我使用英文标签加载XML文件时,一切正常但是当我尝试加载带有用希腊语编写的标签的XML文件时,没有任何作用,为什么会发生这种情况?
我是否必须在代码中的某处更改编码?
这是我使用的代码:
XmlDocument xdoc = new XmlDocument();
xdoc.Load(filename);
XmlNode root = xdoc.DocumentElement;
if (root.HasChildNodes)
{
for (int i = 0; i < root.ChildNodes.Count; i++)
{
richTextBox1.AppendText(root.ChildNodes[i].InnerXml + "\n");
}
}
答案 0 :(得分:2)
我下载了您的文件并成功反序列化/显示。
public class ΦΑΡΜΑΚΑ
{
public string A;
public string ΦΑΡΜ_ΑΓΩΓΗ;
public string ΧΟΡΗΓΗΣΗ;
public string ΛΗΞΗΣ;
public string ΑMKA;
}
XmlSerializer xml = new XmlSerializer(typeof(ΦΑΡΜΑΚΑ[]),new XmlRootAttribute("dataroot"));
ΦΑΡΜΑΚΑ[] array = (ΦΑΡΜΑΚΑ[])xml.Deserialize(File.Open(@"D:\Downloads\bio3.xml", FileMode.Open));
richTextBox1.Text = String.Join(Environment.NewLine, array.Select(x => x.ΦΑΡΜ_ΑΓΩΓΗ));
答案 1 :(得分:1)
确保您的富文本框的多行属性设置为true。默认值为true,但您可以更改它。此外,而不是\ n使用Environment.NewLine。
另外.InnerText将为您提供没有标签的值。 InnerXml也为您提供了标记。