zoukankan      html  css  js  c++  java
  • c# 读取记事本txt文档到DataTable中

    有时候我们仅仅需要用到简单的几个数据,没有必要在数据库中建立单独的表去存储这些数据然后去连接数据库等等。

    例如:我们的程序中只需要给几个人定时发送邮件,而这几个人的邮件地址则可以放到txt文档中,然后读取出来即可。

    从txt读取出来的数据,最好放到DataTable返回,这样主程序中就可以遍历DataTable。

    之前有想到把这些数据放到数组中,但是这些数据的长度不定,所以定义数组存在不确定性,最好的选择还是DataTable,代码如下:

    记事本路径:

    //添加引用
    using System.Data.SqlClient;
    using System.IO;

    //
    记事本路径(最好用相对路径) public static string strNoCheckGroup = @"..\..\MailAddress\MailAddress.txt";
       //ReadTXT
            public static System.Data.DataTable ReadTXT(string dirTXT)
            {
                StreamReader objReader = new StreamReader(dirTXT);
                System.Data.DataTable dt = new System.Data.DataTable();
                dt.Columns.Add("DN", System.Type.GetType("System.String"));
    
                string sLine = "";
    
                while (sLine != null)
                {
                    sLine = objReader.ReadLine();
                    if (sLine != null && !sLine.Equals(""))
                    {
                        DataRow dr = dt.NewRow();
                        dr["DN"] = sLine;
                        dt.Rows.Add(dr);
                    }
                }
    
                objReader.Close();
                return dt;
            }
            //WriteTXT
            public static void WriteTXT(string dirTXT, System.Data.DataTable dt)
            {
                FileStream fs = new FileStream(dirTXT, FileMode.Create);
                StreamWriter sw = new StreamWriter(fs);
                //开始写入
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    sw.Write(dt.Rows[i][0].ToString() + " " + dt.Rows[i][1].ToString() + " " + dt.Rows[i][2].ToString() + " " + dt.Rows[i][3].ToString() + " " + dt.Rows[i][4].ToString() + "\r\n");
                }
                //清空缓冲区
                sw.Flush();
                //关闭流
                sw.Close();
                fs.Close();
            }
            //WriteTXT
            public static void WriteStringToTXT(string dirTXT, string str)
            {
                FileStream fs = new FileStream(dirTXT, FileMode.Create);
                StreamWriter sw = new StreamWriter(fs);
                //开始写入
                sw.Write(str + "\r\n");
                //清空缓冲区
                sw.Flush();
                //关闭流
                sw.Close();
                fs.Close();
            }

     读取string字段存放到List<string> 中,获得电脑IP地址(多张网卡):

     public static List<string> ipList = new List<string>();
            public static void IpAddress()
            {
                try
                {
                    string localIP = "";
                    System.Net.IPAddress[] addressList = Dns.GetHostEntry(Dns.GetHostName()).AddressList;
    
                    foreach (IPAddress ip in addressList)
                    {
                        if (ip.AddressFamily == AddressFamily.InterNetwork)
                        {
                            localIP = ip.ToString();
                            ipList.Add(localIP);
                        }
                    }
                }
                catch (Exception)
                {
                    ipList.Add("0.0.0.0");
                }
    }
    
     public static void GetIPAddress()
            {
                IpAddress();
                for (int i = 0; i < ipList.Count; i++)
                {
                    Console.WriteLine(ipList[i]);
                }
            }
  • 相关阅读:
    香洲区学区查询
    审批流程标识
    小技巧
    Python字符串操作
    Delphi删除动态数组的指定元素
    dephi 多种排序 算法
    [转载]模拟退火,遗传算法,禁忌搜索,神经网络
    Date类学习总结(Calendar Date 字符串 相互转换 格式化) 转
    Java静态嵌套类
    java中的匿名内部类总结
  • 原文地址:https://www.cnblogs.com/siri/p/2748960.html
Copyright © 2011-2022 走看看