C#TXT文档操作问题

要将这数据提取出来,并且存入集合(字典也可以,可以按索引删除就可以)最后要可以根据集合(或字典)重写TXT文档,要代码。... 要将这数据提取出来,并且存入集合(字典也可以,可以按索引删除就可以)
最后要可以根据集合(或字典)重写TXT文档,要代码。
展开
 我来答
陈小冻冻
2013-06-16 · 超过33用户采纳过TA的回答
知道答主
回答量:138
采纳率:0%
帮助的人:74.2万
展开全部

 StringBuilder sb = new StringBuilder();

            //读取

            string[] strs=   File.ReadAllLines(@"D:\Users\AdminGD\Desktop\百度.txt", Encoding.Default);

            for (int i = 0; i <strs.Length ; i++)

            {   //分割字符串

                string[] strarry = strs[i].Split(new char[]{'|'}, StringSplitOptions.RemoveEmptyEntries);

                //拼接

                sb.Append(string.Join("|", strarry));

                //换行

                sb.Append('\r');

            }

            //写入

            File.WriteAllText(@"D:\Users\AdminGD\Desktop\百度度.txt", sb.ToString());


yinfengnong
2013-06-16 · TA获得超过5619个赞
知道大有可为答主
回答量:2344
采纳率:89%
帮助的人:2292万
展开全部

下面是代码,参考一下,另有附件:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace ReadTxtDemo
{
class Program
{
public static List<Person> ReadPerson(string file)

List<Person> persons = null;

using (StreamReader sr = File.OpenText(file)) {
persons = new List<Person>();

while(!sr.EndOfStream) {
string line = sr.ReadLine();

//如果是空行,读取下一行
if (string.IsNullOrEmpty(line)) {
continue;
}

string[] items = line.Split('|');
persons.Add(new Person(items[0], items[1], items[2], items[3]));
}
}

return persons;
}

public static void WritePerson(string file, List<Person> persons)
{
using (StreamWriter sw = File.CreateText(file)) {
foreach (Person person in persons) {
sw.WriteLine("{0}|{1}|{2}|{3}", person.Name, person.Profession, person.Country, person.Address);
}
}
}

static void Main(string[] args)
{
//读取数据
List<Person> persons = ReadPerson("person.txt");

//显示
foreach (Person person in persons) {
Console.WriteLine("{0}\t{1}\t{2}\t{3}", person.Name, person.Profession, person.Country, person.Address);
}

//删除第一行数据
persons.RemoveAt(0);

//添加一行数据
persons.Add(new Person("赵五", "程序员", "中国", "深圳"));

//保存
WritePerson("person.txt", persons);

Console.ReadKey();
}
}


class Person
{
public string Name { get; set; }
public string Profession { get; set; }
public string Country { get; set; }
public string Address { get; set; }

public Person(string name = "", string profession = "", string country = "", string address = "")
{
this.Name = name;
this.Profession = profession;
this.Country = country;
this.Address = address;
}

}
}

 

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
岩石の审判8a3631
2013-06-16 · TA获得超过3822个赞
知道小有建树答主
回答量:1513
采纳率:33%
帮助的人:973万
展开全部
数组=File.readAllLine
数组=字符串.Split('|');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-06-16
展开全部
readline splite('|')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式