您的位置:首页 > 职场人生

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

2014-05-18 23:21 330 查看
---------------------- <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>、期待与您交流!
----------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐