zoukankan      html  css  js  c++  java
  • C#向文件写、读数据

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    
    namespace FileTest
    {
        class Program
        {
            static void Main(string[] args)
            {
                WriteFile();
                ReadFile();
    
                Console.ReadKey();
            }
    
    
            /// <summary>
            /// 写、读文件
            /// </summary>
            static void WriteFile()
            {
                string pathUrl = @"E:我的任务其他MyCodes_VS2013MyCodesTestFolderWriteAndReadFile.txt";
    
                try
                {
                    if (File.Exists(pathUrl))
                    {
                        #region 向文件写入数据
    
                        Console.WriteLine("");
                        //以WriteAllBytes方式向文件中写入数据,可以操作除文本文件外的文件类型,比如音频文件,视频文件等
                        Console.WriteLine("以WriteAllBytes方式向文件中写入数据");
                        byte[] contentInByte = Encoding.GetEncoding("gb2312").GetBytes("以WriteAllBytes方式向文件中写入数据。"); ;
                        File.WriteAllBytes(pathUrl, contentInByte);
    
                        Console.WriteLine("");
                        //以WriteAllLines方式向文件中写入数据
                        Console.WriteLine("以WriteAllLine方式向文件中写入数据");
                        string[] contentInString = new string[] { "以WriteAllLine方式向文件中写入数据。" };
                        File.WriteAllLines(pathUrl, contentInString, Encoding.GetEncoding("gb2312"));
    
                        Console.WriteLine("");
                        //以WriteAllText方式向文件中写入数据
                        Console.WriteLine("以WriteAllText方式向文件中写入数据");
                        File.WriteAllText(pathUrl, "以WriteAllText方式向文件中写入数据。", Encoding.GetEncoding("gb2312"));
                        #endregion

                        #region  以上三种方会将文件原有数据覆盖,若想不覆盖原有数据,可以用下面两种方法;实现在原有数据后追加数据
    //AppendAllLines方式向文件写入数据 File.AppendAllLines(pathUrl, new string[] { "AppendAllLine方式向文件写入数据" }, Encoding.GetEncoding("gb2312")); //AppendAllText方式向文件写入数据 File.AppendAllText(pathUrl, "AppendAllText方式向文件写入数据", Encoding.GetEncoding("gb2312"));
    #endregion
    }
    else
                    {
                        File.Create(pathUrl);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message + ex.StackTrace);
                }
    
            }
    
    
            static void ReadFile()
            {
                string pathUrl = @"E:我的任务其他MyCodes_VS2013MyCodesTestFolderWriteAndReadFile.txt";
    
                try
                {
                    if (File.Exists(pathUrl))
                    {
                        Console.WriteLine("");
                        #region 读取文件数据
    
                        //以ReadAllBytes方式读取数据
                        Console.WriteLine("以ReadAllBytes方式读取文件数据:");
                        byte[] readContentInByte = File.ReadAllBytes(pathUrl);
                        Console.WriteLine(Encoding.GetEncoding("gb2312").GetString(readContentInByte));
    
                        Console.WriteLine("");
                        //以ReadAllLine方式读取数据
                        Console.WriteLine("以ReadAllLine方式读取文件数据:");
                        string[] readContentInString = File.ReadAllLines(pathUrl, Encoding.GetEncoding("gbk"));
                        Console.WriteLine(readContentInString.Aggregate(string.Empty, (result, current) => result += current));
    
                        Console.WriteLine("");
                        //以ReadAllText方式读取数据
                        Console.WriteLine("以ReadAllTex方式读取文件数据:");
                        Console.WriteLine(File.ReadAllText(pathUrl, Encoding.GetEncoding("GBK")));
    
                        #endregion
                    }
                    else
                    {
                        File.Create(pathUrl);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message + ex.StackTrace);
                }
    
            }
        }
    }
  • 相关阅读:
    [ASP.NET AJAX]Function对象及Type类的方法介绍
    经常用到的Banner服务器控件的开发
    [ASP.NET AJAX]类似.NET框架的JavaScript扩展
    [EnterpriseLibrary]SqlConnection.ConnectionString相关关键字
    [设计模式] Singleton Pattern
    [XNA GAME]今天开始我想和XNA Game交朋友
    把SQL数据库部署到远程数据库服务器中
    [CommunityServer]AJAX客户端说明,XMLHttpRequest对象
    [EnterpriseLibrary].NET程序中配置文件(.config)操作
    [今天我当家]糖醋排骨
  • 原文地址:https://www.cnblogs.com/zhouyunbaosujina/p/4104027.html
Copyright © 2011-2022 走看看