黑马程序员_C#中对文件的一些操作

来源:互联网 发布:花生壳免费域名不能用 编辑:程序博客网 时间:2024/05/18 02:40

---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

    在C#中对文件的操作大体分为三种:1,对文本文件的操作 2,对文件夹的操作 3,对文件路径的操作

对文本文件的操作:

 File类

基本操作:判存、复制、移动、删除
基本方法:
File.Exist();
File.Copy();
File.Move();
File.Delete()

 File类的方法:操作文本文件

File.ReadAllLines(“path”, Encoding.Default);//读取所有行,返回string[]
File.ReadAllText(“path”, Encoding.Default);//读取所有文本返回string
File.ReadAllBytes(“path”);//读取文件,返回byte[],把文件作为二进制来处理。
===========================================
File.WriteAllLines(“path”, new string[4] ,Encoding.Default);//将string数组按行写入文件。
File.WriteAllText(“path”, “string”);//将字符串全部写入文件
File.WriteAllBytes(“path”,new byte[5]);//将byte[]全部写入到文件
File.AppendAllText()//将string追加到文件
简单的文件读写

ReadAllText与AppendAllText
ReadAllLines与WriteAllLines
文件编码简介
ASCII编码
Unicode编码
UTF-8(通用转换格式)编码*
Gb2312国标
StreamReader与StreamWriter

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace _09File类的读写文件
{
    class Program
    {
        static void Main(string[] args)
        {
            //string[] str = File.ReadAllLines(@"C:\Users\SpringRain\Desktop\4.txt",Encoding.Default);
            //for (int i = 0; i < str.Length; i++)
            //{
            //    Console.WriteLine(str[i]);
            //}

            //string str = File.ReadAllText(@"C:\Users\SpringRain\Desktop\1.txt",Encoding.Unicode);
            //Console.WriteLine(str);
            //Console.ReadKey();

            //byte[] buffer = File.ReadAllBytes(@"C:\Users\SpringRain\Desktop\1.txt");
            ////将字节数组转换成字符串
            ////189 89 76   189 89 76    woaini
            ////把字节数组解码成我们认识的字符串
            //string str = System.Text.Encoding.UTF8.GetString(buffer);
            //Console.WriteLine(str);

            ////for (int i = 0; i < buffer.Length; i++)
            ////{
            ////    Console.WriteLine(buffer[i].ToString());
            ////}
            //Console.ReadKey();

            //1024byte=1kb
            //1024kb=1M
            //1024M=1G
            //1024G=1T
            //1024T=1PT
            // File.readall

            //会覆盖源文件
            //File.WriteAllLines(@"C:\Users\SpringRain\Desktop\new.txt", new string[] { "1", "2", "3" });

            //也会覆盖源文件内容
            // File.WriteAllText(@"C:\Users\SpringRain\Desktop\new.txt", "今天");

 

            //这三种写入方式都会覆盖源文件
            //string str="今天天气好晴朗,处处好风光";
            ////将字符串转换成字节数组
            //byte[] buffer=    System.Text.Encoding.Default.GetBytes(str);
            //File.WriteAllBytes(@"C:\Users\SpringRain\Desktop\new.txt", buffer);
            //Console.WriteLine("写入成功");
            //Console.ReadKey();


            //追加着向文件中写入数据
            //File.AppendAllText(@"C:\Users\SpringRain\Desktop\new.txt", "我是新来的",Encoding.GetEncoding("gb2312"));
            //Console.WriteLine("追加成功");
            //Console.ReadKey();


            //byte[] buffer = File.ReadAllBytes(@"C:\Users\SpringRain\Desktop\1、复习.wmv");

            //File.WriteAllBytes(@"D:\new.wmv", buffer);
            //Console.WriteLine("复制成功");
            //Console.ReadKey();
        }
    }
}

对文件夹的操作:

Directory类

基本操作:创建、移动和删除的功能
命名空间System.IO
Directory常用方法
CreateDirectory()
Move()
Delete()
Exist()

             //创建文件夹
            //Directory.CreateDirectory(@"C:\a");
            //Console.WriteLine("创建成功");
            //Console.ReadKey();
            //for (int i = 0; i < 100; i++)
            //{
            //    Directory.CreateDirectory(@"C:\a\" + i);
            //}
            //Console.WriteLine("成功");
            //Console.ReadKey();


            //删除文件夹
            //Directory.Delete(@"C:\a",true);
            //Console.WriteLine("删除成功");
            //Console.ReadKey();


            //剪切文件夹
            //Directory.Move(@"C:\a\b", @"C:\d");
            //Console.WriteLine("剪切成功");
            //Console.ReadKey();

对路径的操作:

  string s1 = @"C:\Users\Administrator\Desktop\资料\1.txt";
            //获得文件的名称
            Console.WriteLine(Path.GetFileName(s1));
            //获得文件的名称但是不包含扩展名
            Console.WriteLine(Path.GetFileNameWithoutExtension(s1));
            //获得文件的扩展名
            Console.WriteLine(Path.GetExtension(s1));
            //获得文件所在的文件夹的路径
            Console.WriteLine(Path.GetDirectoryName(s1));
            //获得文件的绝对路径
            Console.WriteLine(Path.GetFullPath(s1));
            //拼接路径
            Console.WriteLine(Path.Combine(@"C:\a\","b.txt"));
            Console.WriteLine(Path.ChangeExtension(@"C:\Users\SpringRain\Desktop\code.txt",".jpg"));
            Console.ReadKey();

以上是一些简单的知识,还有一个文件流FileStream:FileStream类
Read方法与Write方法
FileMode
Read、Write、ReadWrite
FileAccess
Append、Create、CreateNew、Open、
OpenOrCreate、Truncate
使用File类简单创建流
有时间会说到;

有兴趣的可以私密我454663723@qq.com

---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------

 

 

0 0
原创粉丝点击