zoukankan      html  css  js  c++  java
  • .Net 中操作文本文件

    一 、写入文本

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    
    namespace PlaceUsingTxt
    {
        public class ClassWriteTxt
        {
            public ClassWriteTxt(string url)
            {
                TxtUrl = url;
                fs = new FileStream(TxtUrl, FileMode.Create, FileAccess.ReadWrite);
                sw = new StreamWriter(fs);
            }
    
            public void close()
            {
                sw.Close();
                fs.Close();
            }
    
            protected string TxtUrl;
            protected FileStream fs;
            protected StreamWriter sw;
    
            public void TxtToBegin()
            {
                sw.BaseStream.Seek(0, SeekOrigin.Begin);
            }
    
            public void TxtToEnd()
            {
                sw.BaseStream.Seek(0, SeekOrigin.End);
            }
    
            public void WriteLineIntoTxt(string s)
            {
                sw.WriteLine(s);
                sw.Flush();
            }
    
            public void WriteIntoTxt(string s)
            {
                sw.Write(s);
                sw.Flush();
            }
    
        }
    }

    二 读文本

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    
    namespace PlaceUsingTxt
    {
        public class ClassReadTxt
        {
            public ClassReadTxt(string url)
            {
                TxtUrl = url;
                fs = new FileStream(TxtUrl, FileMode.Open, FileAccess.ReadWrite);
                sr = new StreamReader(fs);
            }
    
            public void close()
            {
                sr.Close();
                fs.Close();
            }
    
            protected string TxtUrl;
            protected FileStream fs;
            protected StreamReader sr;
    
            public void TxtToBegin()
            {
                sr.BaseStream.Seek(0, SeekOrigin.Begin);
            }
    
            public void TxtToEnd()
            {
                sr.BaseStream.Seek(0, SeekOrigin.End);
            }
    
            //逐行读取文本,存于动态数组arraylist中
            public System.Collections.ArrayList ReadTxtIotoArray()
            {
                System.Collections.ArrayList arr = new System.Collections.ArrayList();
    
                while (sr.Peek() > 0)
                {
                    arr.Add(sr.ReadLine());
                }
    
                return arr;
            }
    
            //将array赋给string二维数组,适用于逗号分割的且上下对齐的文本
            public string[,] OutStr2D()
            {
                this.TxtToBegin();
                System.Collections.ArrayList arr = this.ReadTxtIotoArray();
                int RowCount = arr.Count;
                if (RowCount == 0)
                {
                    return null;
                }
               
                //取得文本列数
                string[] strtest = arr[0].ToString().Split(',');
                int ColumnCount = strtest.Length;
    
                string[,] s = new string[RowCount,ColumnCount];
                for (int i = 1; i <= RowCount ; i++)
                {
                    string[] stest = arr[i - 1].ToString().Split(',');
                    for (int j = 1; j <= ColumnCount; j++)
                    {
                        s[i - 1, j - 1] = stest[j - 1];
                    }
                }
    
                return s;
            }
        }
    }
    




  • 相关阅读:
    javascript 学习笔记
    vim折叠设置(转载)
    描述符
    python运算符优先级
    python repr()和str()
    python super()
    [深入Python]__new__和__init__
    python中,类方法和静态方法区别。
    python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
    关于字符集和字符编码自己汇总记录
  • 原文地址:https://www.cnblogs.com/silyvin/p/9106929.html
Copyright © 2011-2022 走看看