public partial class FrmTxtXml : Form
{
String txtContent = String.Empty;
//
public FrmTxtXml()
{
InitializeComponent();
}
//打开txt文件
private void toolStripOpen_Click(object sender, EventArgs e)
{
using (OpenFileDialog fileDialog = new OpenFileDialog())
{
fileDialog.Filter = "文本文件(*.txt)|*.txt";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
String fileName = fileDialog.FileName;
if (!String.IsNullOrEmpty(fileName))
{
using (StreamReader st = new StreamReader(fileName, System.Text.Encoding.GetEncoding("GBK")))
{
txtContent = st.ReadToEnd();
//读取txt文件到txtTXT文本框
this.txtTXT.Text = txtContent;
st.Close();
}
}
}
}
}
//将txt文件内容转换成xml格式内容
private void toolStripConvert_Click(object sender, EventArgs e)
{
try
{
//将txt内容分解为行数组
String[] lines = this.txtTXT.Text.Split(new string[] { "\r\n" }, StringSplitOptions.None);
String[] heads = null;
if (lines != null && lines.Length > 0)
{
//读取第一行数据,该行数据为xml文件的节点描述数据
heads = lines[0].Split(new string[] { "\t" }, StringSplitOptions.None);
//MessageBox.Show(heads.Length.ToString() + " " + heads[0]);
}
//
StringBuilder sb = new StringBuilder();
sb.Append("<?xml version=\"1.0\" encoding=\"gbk\"?>").Append(Environment.NewLine).Append("<dataRoot>").Append(Environment.NewLine);
//生成xml节点
for (int i = 1; i < lines.Length; i++)
{
if (lines[i] == null || lines[i].Trim().Length < 1)
continue;
String[] info = lines[i].Split(new string[] { "\t" }, StringSplitOptions.None);
sb.Append(createNode(heads, info));
}
sb.Append("</dataRoot>");
this.txtXML.Text = sb.ToString();
}
catch (Exception exp)
{
MessageBox.Show(exp.Message);
}
}
//产生xml节点
private String createNode(String[] head, String[] info)
{
StringBuilder sb = new StringBuilder();
sb.Append("<record>").Append(Environment.NewLine);
for (int i = 0; i < head.Length; i++)
{
sb.Append("<" + head[i] + ">" + info[i] + "</" + head[i] + ">").Append(Environment.NewLine);
}
sb.Append("</record>").Append(Environment.NewLine);
return sb.ToString();
}
//将txtXML文本框内容另存为xml文件
private void toolStripSaveas_Click(object sender, EventArgs e)
{
try
{
String fileName = "";
using (SaveFileDialog fileDialog = new SaveFileDialog())
{
fileDialog.Filter = "XML数据文件(*.xml)|*.xml";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
fileName = fileDialog.FileName;
if (!String.IsNullOrEmpty(fileName))
{
FileStream fs = new FileStream(fileName, FileMode.Create);
//获得字节数组
byte[] data = System.Text.Encoding.GetEncoding("GBK").GetBytes(this.txtXML.Text);
//开始写入
fs.Write(data, 0, data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();
}
}
}
MessageBox.Show(String.Format("文件成功保存到{0}", fileName));
}
catch (Exception exp)
{
MessageBox.Show(exp.Message);
}
}
}
|
相关推荐
本主题聚焦于使用C#将TXT文本文件转换为XML文件。TXT文件通常包含纯文本,而XML(eXtensible Markup Language)则是一种结构化数据格式,用于存储和传输数据,具有自描述性和严格的规则。 首先,让我们理解TXT到XML...
标题中的“txt数据转换为xml数据的小工具”指的是一个实用程序,它的主要功能是将文本文件(.txt)中的数据转换成结构化的XML(可扩展标记语言)文件。这种转换对于那些需要处理结构化数据,特别是在编程环境中工作...
在C#编程中,文本的旋转显示是一种常见的需求,尤其在图形用户界面(GUI)设计、游戏开发或者数据可视化中。这种技术可以让文本按照特定的角度进行旋转,为用户界面增添动态效果或者提升信息呈现的清晰度。下面我们...
本项目涉及的知识点是使用C#实现Excel到XML的转换,这在数据处理和信息交换中非常常见,因为XML是一种结构化的数据格式,易于解析和共享。 首先,我们需要了解如何在C#中操作Excel文件。Microsoft提供了`Microsoft....
C# 生成 XML 文件,编码为 UTF-8 方法 C# 生成 XML 文件,编码为 UTF-8 方法是指在 C# 编程语言中,使用特定的方法和类来生成 XML 文件,并将其编码为 UTF-8 编码格式的过程。这种方法常用于数据交换、配置文件、...
在C#编程中,读取文本文件(如.txt格式)和XML文件是非常常见的操作,尤其在数据处理和信息存储方面。下面将详细讲解如何使用C#进行这两种类型的文件读取。 首先,我们来讨论如何使用C#读取TXT文件。在C#中,可以...
在这个场景中,我们将探讨如何使用C#的LINQ to XML来将XML文件中的属性转换为元素。 首先,让我们了解XML的基本结构。XML是一种标记语言,用于存储和传输数据。数据以元素的形式存在,元素可以有子元素、文本内容和...
XML文件的基本结构包括声明、元素、属性和文本。 * 声明:XML文件的第一行是声明,用于指定XML文件的版本和编码方式。 * 元素:XML文件由元素组成,元素可以包含文本、属性和其他元素。 * 属性:元素可以具有属性,...
首先,我们要理解图片是由像素组成的二进制数据,而XML是基于文本的标记语言,用于描述数据。将图片转换为XML,我们需要将图片的像素数据编码为XML元素和属性。以下是一些关键步骤和知识点: 1. **读取图片**: 使用...
在C# WinForm应用程序中,读写XML文件是常见的数据操作任务。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,它结构清晰、易于解析且跨平台。下面将详细介绍如何使用C# WinForm来实现XML...
这个压缩包"**C#将List与xml互转_支持简单类型.rar**"包含了一个示例文本文件"**C#将List与xml互转_支持简单类型.txt**"和一个可能用于测试的数据文件"**1.xls**"。 首先,让我们理解List和XML的基本概念。List是...
XML文档由元素、属性、文本节点等组成,它们以层次结构的方式组织数据。要解析XML文件,C#提供了System.Xml命名空间,其中包含如XmlDocument、XmlNode、XmlElement等类,用于读取、操作和解析XML数据。 1. **使用...
"Unity/C#的Excel转二进制和XML工具"就是为了解决这个问题而设计的,它允许开发者将Excel表格数据转换为二进制或XML格式,以便在游戏中更高效地存储和加载。这个工具的使用基于C#语言,并且利用了EPPlus库,一个强大...
TXT文件是最简单的文本格式,C#中可以使用`System.IO`命名空间的`StreamReader`类来读取。例如: ```csharp using System.IO; string filePath = @"C:\path\to\file.txt"; using (StreamReader reader = new ...
本主题聚焦于使用C#处理Office文档,包括DOC(Word文档)、PPT(PowerPoint演示文稿)和EXCEL(电子表格),并将其内容转换成纯文本TXT格式。这种操作在数据提取、文本分析或跨平台兼容性需求时非常有用。 首先,让...
XML转菜单的递归实现 #### 4.1 XmlToMenu 方法 - **功能**:递归地将XML节点转换为菜单项。 - **参数**: - `XmlNode Node`:当前处理的XML节点。 - `MenuItem Menu`:当前菜单项,用于添加子菜单。 - **实现...
生成xml格式字符串、序列化XML 对象=》XML文本、反序列化 XML文本=》对象 等方法,对象和xml之间的相互转换、datatable方式转换为xml文本的工具类方法 C#语言
接下来,在C#代码中,我们需要读取这个XML文件并根据用户的语言选择加载相应的文本。可以使用`XDocument`类来解析XML文档: ```csharp using System.Xml.Linq; // 加载XML文件 XDocument doc = XDocument.Load(...
XML是可扩展标记语言(Extensible Markup Language)的缩写,是一种用于存储和传输数据的文本格式,尤其在软件开发中被广泛应用于数据交换和配置文件。C# 是微软开发的一种面向对象的编程语言,它提供了强大的XML...
这个主题主要涉及如何利用XML文件存储不同语言的文本资源,然后在C#程序中动态加载和切换这些资源,以实现用户界面的本地化。下面我们将详细探讨这一过程。 1. **XML文件结构**: XML文件是一种结构化的数据存储...