zoukankan      html  css  js  c++  java
  • C# 与文件读写相关的代码

    创建文件,写入文件,读取文件内容 等等
    File Code
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    using System.Windows.Forms;
    using System.Drawing;
    namespace ConFileReadAndWrite
    {
        public class FileReadAndWrite
        {
           /// <summary>
           /// 创建文件
           /// </summary>
           /// <param name="path"></param>
            public void CreateFile(string path)
            {
                if (File.Exists(path))
                {
                    File.Delete(path);
                }
                File.Create("log.txt");//在运行目录下创建一个log.txt的文件
            }
    
            /// <summary>
            /// 写入现有的文件中,如果目标不存在则创建文件
            /// </summary>
            /// <param name="path"></param>
            /// <param name="content"></param>
            public void WriteFile(string path,string content)
            {
                File.AppendAllText(path, content);
            }
    
            /// <summary>
            /// 文件复制,用于读取缓存,或者多种格式的文件
            /// </summary>
            /// <param name="originalPath"></param>
            /// <param name="targetPath"></param>
            public void FileCopy(string originalPath,string targetPath)
            {
                //或者使用  File.Copy
                FileStream fs = new FileStream(originalPath, FileMode.Open);
                FileStream fs2 = new FileStream(targetPath, FileMode.Create);
                try
                {
                    byte[] data = new byte[1024];
                    BufferedStream bs = new BufferedStream(fs);
                    BufferedStream bs2 = new BufferedStream(fs2);
                    while (fs.Read(data, 0, data.Length) > 0)
                    {
                        fs2.Write(data, 0, data.Length);
                        fs2.Flush();
                    }
                }
                catch (IOException ex)
                {
                    throw ex;
                }
                finally
                {
                    fs.Close();
                    fs2.Close();
                }
            }
    
           /// <summary>
            /// 将文件读入文件流中
           /// </summary>
           /// <param name="path"></param>
            public MemoryStream ReadFileStream(string path)
            {
                FileStream fs = new FileStream(path, FileMode.Open);
                byte[] data = new byte[fs.Length];
                fs.Read(data, 0, data.Length);
                fs.Close();
                MemoryStream ms = new MemoryStream(data);
                return ms;//返回内存流 ,比如把文件,以文件流的方式写入内存中 然后从流中拿出来
                //this.pictureBox1.Image =Image.FromStream(ms);
            }
    
            /// <summary>
            /// 以文本的方式读取文件
            /// </summary>
            /// <param name="path"></param>
            /// <returns></returns>
            public string ReadFile(string path)
            {
                StreamReader objReader = new StreamReader(path);
                try
                {
                    string content = objReader.ReadToEnd();
                    return content;
                }
                catch (IOException ex)
                {
                    throw ex;
                }
                finally
                {
                    objReader.Close();
                }
              
            }
    
            /// <summary>
            /// 使用 StreamWriter 写入文件
            /// </summary>
            /// <param name="path"></param>
            /// <param name="content"></param>
            public void StreamWriterWriteFile(string path, string content)
            {   
                //实例化一个文件流--->与写入文件相关联
                FileStream fs = new FileStream(path, FileMode.Create);
                //实例化一个StreamWriter-->与fs相关联
                StreamWriter sw = new StreamWriter(fs);
                try
                {//开始写入
                    sw.Write(content);
                }
                catch (IOException ex)
                {
                    throw ex;
                }
                finally
                {
                    //清空缓冲区
                    sw.Flush();
                    //关闭流
                    sw.Close();
                    fs.Close();
                }
            }
    
    
            /// <summary>
            /// 以二进制写入文件,例如创建fqf文件
            /// </summary>
            /// <param name="path"></param>
            /// <param name="content"></param>
            public void BinaryWriterWriteFile(string path, string content)
            {
                FileStream fs = new FileStream(path, FileMode.Create);
                //实例化BinaryWriter
                BinaryWriter bw = new BinaryWriter(fs);
                try
                {
                    bw.Write(content);
                }
                catch (IOException ex)
                {
                    throw ex;
                }
                finally
                {
                    //清空缓冲区
                    bw.Flush();
                    //关闭流
                    bw.Close();
                    fs.Close();
                }
            }
        }
    }
  • 相关阅读:
    Python学习Day1
    Linux使用外部邮箱发送邮件
    Linux命令学习1(awk、grep、sed)
    html笔记之表格
    html笔记之认识标签
    zabbix笔记之告警配置
    zabbix笔记之zabbix基础知识了解
    Windows之80端口被系统占用
    python笔记之流程控制
    python笔记之基本数据类型
  • 原文地址:https://www.cnblogs.com/mjxxsc/p/3062415.html
Copyright © 2011-2022 走看看