C# List如何生成Txt文档且读取Txt文档封装List

发布时间:2022-08-10 10:47:40 作者:iii
来源:亿速云 阅读:215

C# List如何生成Txt文档且读取Txt文档封装List

在C#编程中,List<T>是一个非常常用的集合类型,它提供了灵活的数据存储和操作方式。然而,在实际应用中,我们经常需要将List<T>中的数据持久化到文件中,或者从文件中读取数据并重新封装为List<T>。本文将详细介绍如何使用C#将List<T>生成Txt文档,以及如何从Txt文档中读取数据并封装为List<T>

目录

  1. List简介
  2. 将List生成Txt文档
  3. 从Txt文档读取数据并封装为List
  4. 封装为通用方法
  5. 总结

List简介

List<T>是C#中一个非常常用的泛型集合类,它允许我们存储和操作一组类型为T的对象。List<T>提供了丰富的方法和属性,如AddRemoveFindSort等,使得我们可以方便地对集合中的元素进行操作。

将List生成Txt文档

在实际应用中,我们经常需要将List<T>中的数据保存到文件中,以便后续使用或分享。Txt文档是一种常见的文件格式,下面我们将介绍两种将List<T>生成Txt文档的方法。

2.1 使用StreamWriter写入Txt文档

StreamWriter是C#中用于写入文本文件的类。我们可以使用StreamWriterList<T>中的每一行数据写入Txt文档。

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

class Program
{
    static void Main()
    {
        List<string> dataList = new List<string>
        {
            "Line 1",
            "Line 2",
            "Line 3"
        };

        string filePath = "output.txt";

        using (StreamWriter writer = new StreamWriter(filePath))
        {
            foreach (string line in dataList)
            {
                writer.WriteLine(line);
            }
        }

        Console.WriteLine("Txt文档生成成功!");
    }
}

在上面的代码中,我们首先创建了一个List<string>对象dataList,然后使用StreamWriterdataList中的每一行数据写入到output.txt文件中。

2.2 使用File.WriteAllLines写入Txt文档

File.WriteAllLines是C#中一个非常方便的方法,它可以将一个字符串数组或List<string>直接写入到文件中。

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

class Program
{
    static void Main()
    {
        List<string> dataList = new List<string>
        {
            "Line 1",
            "Line 2",
            "Line 3"
        };

        string filePath = "output.txt";

        File.WriteAllLines(filePath, dataList);

        Console.WriteLine("Txt文档生成成功!");
    }
}

在这个例子中,我们直接使用File.WriteAllLines方法将dataList中的数据写入到output.txt文件中。这种方法比使用StreamWriter更加简洁。

从Txt文档读取数据并封装为List

除了将List<T>生成Txt文档,我们还经常需要从Txt文档中读取数据并重新封装为List<T>。下面我们将介绍两种从Txt文档读取数据并封装为List<T>的方法。

3.1 使用StreamReader读取Txt文档

StreamReader是C#中用于读取文本文件的类。我们可以使用StreamReader逐行读取Txt文档中的数据,并将其添加到List<T>中。

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

class Program
{
    static void Main()
    {
        string filePath = "output.txt";
        List<string> dataList = new List<string>();

        using (StreamReader reader = new StreamReader(filePath))
        {
            string line;
            while ((line = reader.ReadLine()) != null)
            {
                dataList.Add(line);
            }
        }

        Console.WriteLine("从Txt文档读取数据并封装为List<T>成功!");
        foreach (string line in dataList)
        {
            Console.WriteLine(line);
        }
    }
}

在这个例子中,我们使用StreamReader逐行读取output.txt文件中的数据,并将其添加到dataList中。

3.2 使用File.ReadAllLines读取Txt文档

File.ReadAllLines是C#中一个非常方便的方法,它可以将Txt文档中的所有行读取到一个字符串数组中。我们可以直接将这个字符串数组转换为List<T>

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

class Program
{
    static void Main()
    {
        string filePath = "output.txt";

        List<string> dataList = new List<string>(File.ReadAllLines(filePath));

        Console.WriteLine("从Txt文档读取数据并封装为List<T>成功!");
        foreach (string line in dataList)
        {
            Console.WriteLine(line);
        }
    }
}

在这个例子中,我们使用File.ReadAllLines方法将output.txt文件中的所有行读取到一个字符串数组中,然后将其转换为List<string>

封装为通用方法

为了提高代码的复用性,我们可以将上述功能封装为通用的方法。下面是一个将List<T>生成Txt文档和从Txt文档读取数据并封装为List<T>的通用方法示例。

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

class FileHelper
{
    public static void SaveListToFile<T>(List<T> list, string filePath)
    {
        List<string> stringList = list.ConvertAll(x => x.ToString());
        File.WriteAllLines(filePath, stringList);
    }

    public static List<T> LoadListFromFile<T>(string filePath, Func<string, T> converter)
    {
        List<T> list = new List<T>();
        string[] lines = File.ReadAllLines(filePath);

        foreach (string line in lines)
        {
            list.Add(converter(line));
        }

        return list;
    }
}

class Program
{
    static void Main()
    {
        List<int> dataList = new List<int> { 1, 2, 3, 4, 5 };
        string filePath = "output.txt";

        // 保存List<T>到Txt文档
        FileHelper.SaveListToFile(dataList, filePath);
        Console.WriteLine("List<T>已保存到Txt文档!");

        // 从Txt文档读取数据并封装为List<T>
        List<int> loadedList = FileHelper.LoadListFromFile(filePath, int.Parse);
        Console.WriteLine("从Txt文档读取数据并封装为List<T>成功!");

        foreach (int item in loadedList)
        {
            Console.WriteLine(item);
        }
    }
}

在这个例子中,我们定义了一个FileHelper类,其中包含两个静态方法:SaveListToFileLoadListFromFileSaveListToFile方法将List<T>保存到Txt文档中,LoadListFromFile方法从Txt文档中读取数据并封装为List<T>。通过这种方式,我们可以轻松地在不同的项目中复用这些功能。

总结

本文详细介绍了如何使用C#将List<T>生成Txt文档,以及如何从Txt文档中读取数据并封装为List<T>。我们探讨了使用StreamWriterFile.WriteAllLinesList<T>写入Txt文档的方法,以及使用StreamReaderFile.ReadAllLines从Txt文档中读取数据的方法。最后,我们将这些功能封装为通用的方法,以提高代码的复用性。

通过掌握这些技巧,您可以轻松地在C#项目中实现数据的持久化和读取,从而提高开发效率和代码的可维护性。希望本文对您有所帮助!

推荐阅读:
  1. python如何读取TXT文件每行数据并存到LIST中
  2. 使用python怎么实现循环读取txt文档

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

list txt

上一篇:vue如何实现路由按需加载

下一篇:MySQL数据库数据如何删除

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》