文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2022-11-13 14:41

关注

前言

在做项目的时候遇到这样的一个问题,需要我将List中的数据读出来并把数据封装到Txt文件中,也能把Txt文件中的数据读出来放到List集合中,虽然不是很难,但是也很麻烦,这篇文章就是记录一下,自己写的代码,方便自己后期复习,查阅,有不足的地方,大家一起讨论学习一下,不喜勿喷,欢迎大家点赞评论收藏,你的点赞是我更文的动力。

一、简单设计界面

做一个简单的界面,两个触发按钮,对我们写的代码,进行控制(可以直接跳到后面看代码)

窗体触发函数,双击按钮得到的触发函数,编写触发函数的触发条件和逻辑

二、方法函数讲解

总共两个函数,一个读,一个写,分别对应不同的代码,代码逻辑很简单,可以直接拷贝使用,也可以根据自己的需求做更改。代码在文末

三、效果展示

博主只是模拟一部风数据,将数据放进list中,再设置好你需要放置文件的位置,你可以设置任意位置,调用函数将list和文件保存路径作为参数传过去就可以了

生成之后的文件如上图所示,Txt文件中有100个数值。接下来我们把这个txt文件中的数据再读出来,封装进List中。

四、代码逻辑

界面代码:

using DictionaryToTxtFile;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace IC00520
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public static Dao dao = new Dao();//调用方法的声明
        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFile = new OpenFileDialog();//定义打开文件类
            openFile.Filter = "Txt文件(*.Txt)|*.txt|所有文件|*.*";
            if (openFile.ShowDialog() != DialogResult.OK)//打开文件是否点击了取消
                return;
            string path = openFile.FileName;//获得你打开文件的名称,路径
            List<int> datalist= dao.WriteData(path);//调用方法
            foreach(int i in datalist)//遍历展示数据
            {
                richTextBox1.Text += i.ToString()+"\r\n";
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            List<int> list = new List<int>();
            for(int i = 0; i<100;i++)//生成100个虚拟数据测试
            {
                list.Add(i);
            }
            dao.SaveData(list, "C:\Users\ASUS\source\repos\IC00520\IC00520\");//将数据和文件路径作为实参
        }
    }
}

方法类代码:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DictionaryToTxtFile
{
    public class Dao
    {
        public string SaveData(List<int> info,string path)
        {
            try
            {
                string dataName = "";//数据下发文件名
                string Data = "";
                foreach (var item in info)//遍历List数据将数据保存在Data中
                {
                    Data += item + "\r\n";
                }
                dataName = "IC00" + DateTime.Now.ToString("yyyy_MM_dd HH_mm_ss")+ ".txt";//以日期创建文件名
                path += dataName;
                File.AppendAllText(path, Data);//直接追加,如果没有这个文件会自动添加
                return "OK";
            }
           catch(Exception ex)
            {
                return ex.Message.ToString();
            } 
        }
        public List<int>  WriteData(string filepath)
        {
            try
            {
                List<int> info = new List<int>();
                string[] lines = File.ReadAllLines(filepath);//读取文件中的所有行并将所有行放进string数组中
                for (int i = 0; i < lines.Length; i ++)
                {
                    int value = int.Parse(lines[i]);//遍历赋值,返回list的值
                    info.Add(value);
                }
                return info;
            }
           catch(Exception ex)
            {
                return null;
            }
        }
    }
}

五、总结

这篇文章是一篇简单的总结,技术层次不高,只是用了文件的读取,再封装,虽然简单,但是是值得学习和记录的,毕竟要从基础的做起嘛,先小再大,慢慢积累,积少成多

到此这篇关于C# List生成Txt文档并且读取Txt文档封装List的文章就介绍到这了,更多相关C#封装List内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯