C# List生成Txt文檔並且讀取Txt文檔封裝List

前言

在做項目的時候遇到這樣的一個問題,需要我將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內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: