您的位置:首页 > 编程语言 > C#

将TXT文档中数据导入XML文件中 C#

2010-03-17 13:28 537 查看
对于将TXT文档中数据导入XML中的程序网上不多,但是有很多是先将TXT导入到DataSet中,在用XML进行传输。所以本人就在这里与大家分享一下直接导入的这种方式。


本程序也可以应用于ASP.NET中,那么下面的命名空间及一些地方就得改改了,还有要将程序都放于Page_Load中。


using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using System.IO;

using System.Xml;

namespace Read

{

public partial class Form1 : Form

{

XmlDocument xmldoc;

XmlNode xmlnode;

XmlElement xmlelem;

XmlElement xmlelem2;

double[,] tokens ={ { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 }, { 0, 0 } };

public Form1()

{

InitializeComponent();

}

//先将TXT文档中数据转存到数组tokens中

private void btn_send_Click(object sender, EventArgs e)

{

string line;

string[] s;

string str;

FileStream fs = new FileStream("data.txt", FileMode.Open, FileAccess.Read); //读取位于Debug下的data.txt文档

StreamReader reader = new StreamReader(fs,Encoding.Default);

for (int i = 0; i < 15; i++)

{

line = reader.ReadLine();

s = line.Split(' ');

for (int j = 0; j < 2; j++)

{

str = s[j];

tokens[i, j] = double.Parse(str); //将字符数组转化为double类型的数组 ,以便于向XML中写入坐标

}

}

fs.Close();

}

//单击BUTTON将存有坐标的数组导入XML中

private void button1_Click(object sender, EventArgs e)

{

xmldoc = new XmlDocument ( ) ; //加入XML的声明段落

xmlnode = xmldoc.CreateNode ( XmlNodeType.XmlDeclaration , "" , "" ) ;

xmldoc.AppendChild ( xmlnode ) ; //加入一个根元素

xmlelem = xmldoc.CreateElement ( "" , "markers" , "" ) ;

xmldoc.AppendChild ( xmlelem ) ; //加入另外一个元素

for (int i=0;i<=14;i++)

{

xmlelem2 = xmldoc.CreateElement ("marker" );

xmlelem2.SetAttribute("lat",tokens[i,0].ToString());

xmlelem2.SetAttribute("lon", tokens[i, 1].ToString());

xmldoc.ChildNodes.Item(1).AppendChild ( xmlelem2 ) ;

}

//保存创建好的XML文档

try

{

xmldoc.Save ( ".../data.xml" ) ;

}

catch ( Exception ee )

{

//显示错误信息

Console.WriteLine ( ee.Message ) ;

}

Console.ReadLine ( ) ;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: