1.path

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO; namespace path
{
class Program
{
static void Main(string[] args)
{
//Path类专门用来处理路径的!
string str = @"C:\tmuninst.ini";
//获取文件名
Console.WriteLine(Path.GetFileName(str));
//获取文件名,但不包括扩展名
Console.WriteLine(Path.GetFileNameWithoutExtension(str));
//获得文件扩展名
Console.WriteLine(Path.GetExtension(str));
//获得文件所在的文件夹的名称
Console.WriteLine(Path.GetDirectoryName(str));
//获取文件的全路径
Console.WriteLine(Path.GetFullPath(str));
//连接两个字符串作为路径
Console.WriteLine(Path.Combine(@"c:\b\","c.txt")); Console.ReadKey();
}
}
}

2.file类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO; namespace file
{
class Program
{
static void Main(string[] args)
{
//创建文件
//File.Create(@"C:\Users\alexx.zhang\Desktop\123456789.txt");
//删除
File.Delete(@"C:\Users\alexx.zhang\Desktop\123456789.txt");
//复制
//File.Copy(@"",@"");
//判断文件是否存在
if(!File.Exists(@"C:\Users\alexx.zhang\Desktop\123456789.txt"))
{
File.Create(@"C:\Users\alexx.zhang\Desktop\123456789.txt");
Console.WriteLine("OK");
}
else
{
Console.WriteLine("Exists");
}
Console.ReadKey();
}
}
}

**ReadAllBytes/WriteAllBytes

 //读 ReadAllBytes
byte[] buffer= File.ReadAllBytes(@"C:\Users\alexx.zhang\Desktop\123456789.txt");
//将字节数组中的每个元素都要按照我们指定的编码格式解码成字符串
//UTF-8 GB2312K GBK Unicode
string s = Encoding.GetEncoding("GBK").GetString(buffer);
//string ss = Encoding.Default.GetString(buffer);
Console.WriteLine(s); //写 WriteAllBytes
string str = "凄凄切切";
byte[] buffer1 = Encoding.GetEncoding("GBK").GetBytes(str);
File.WriteAllBytes(@"C:\Users\alexx.zhang\Desktop\123456789.txt",buffer1); Console.ReadKey();

**File.ReadAllLines

string [] array= File.ReadAllLines(@"C:\Users\alexx.zhang\Desktop\123456789.txt", Encoding.GetEncoding("GBK"));
foreach (var item in array)
{
Console.WriteLine(item);
}

**File.ReadAllText

 string str= File.ReadAllText(@"C:\Users\alexx.zhang\Desktop\123456789.txt", Encoding.GetEncoding("GBK"));
Console.WriteLine(str);

**File.WriteAllLines/File.WriteAllText

 string [] strs={"","",""};
File.WriteAllLines(@"C:\Users\alexx.zhang\Desktop\123456789.txt", strs); string str="";
File.WriteAllText(@"C:\Users\alexx.zhang\Desktop\1234567890.txt", str);

**File.AppendAllLines

**File.AppendAllText

**File.AppendText

****File类只能读取小文件!,因为它是一下子读取,占内存

3.编码

4.FileStream文件流

1)FileStream 操作字节的

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO; namespace FileStream
{
class Program
{
static void Main(string[] args)
{
//FileStream 操作字节的 //***读取数据
//构造函数:路径,针对文件的操作,针对文件的数据的操作
System.IO.FileStream fs = new System.IO.FileStream(@"C:\Users\alexx.zhang\Desktop\123.txt", FileMode.OpenOrCreate,FileAccess.Read);
byte[] buffer = new byte[ * * ];
//返回本次实际读取到的有效字节数
int i= fs.Read(buffer, , buffer.Length);
//将字节数组中每个元素按照指定的编码格式编译成字符
string s = Encoding.Default.GetString(buffer,,i);
//关闭流
fs.Close();
//释放流所占用的资源
fs.Dispose();
Console.WriteLine(s); //***写入数据
using (System.IO.FileStream fss = new System.IO.FileStream(@"C:\Users\alexx.zhang\Desktop\123.txt", FileMode.OpenOrCreate, FileAccess.Write))
{
string str = "898989898985222232255002..22256655";
byte[] buffers = Encoding.Default.GetBytes(str);
fss.Write(buffers, , buffers.Length);
} Console.ReadKey();
}
}
}

2)StreamReader,StreamWriter 操作字符的

C#面向对象13 文件类操作 Path/File/FileStream的更多相关文章

  1. java 文件类操作(转载)

    11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程 ...

  2. Go path/filepath文件路径操作

    本文:https://books.studygolang.com/The-Golang-Standard-Library-by-Example/chapter06/06.2.html path:htt ...

  3. Java NIO 学习笔记(五)----路径、文件和管道 Path/Files/Pipe

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  4. [No000083]文件与文件夹操作

    #region Folder option 文件夹操作 /// <summary> /// 指定目录是否存在 /// </summary> /// <param name ...

  5. delphi 文件夹操作

    文件的拖放和打开拖拽 user shellapi type TForm1 = class(TForm) ListView1: TListView; procedure FormCreate(Sende ...

  6. 9.2 Go 文件IO操作

    9.2 Go 文件IO操作 1.1.1. bufio包 带有缓冲区的IO读写操作,用于读写文件,以及读取键盘输入 func main() { //NewReader返回一个结构体对象指针 reader ...

  7. C#文件操作常用相关类(Directory类、File类、Path类)

    1.文件操作常用相关类 1)File //操作文件,静态类,对文件整体操作.拷贝.删除.剪切等 2)Directory //操作目录(文件夹),静态类 3)DirectoryInfo //文件夹的一个 ...

  8. 使用File类、StreamRead和StreamWrite读写数据、以及Path类操作文件路径和Directory

    1.File类的概念: File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量 ...

  9. C#基础精华04(文件流,文件操作,File、Directory、Path,Directory)

    文件流 FileStream  可读可写  大文件  释放 StreamReader 读取   释放 StreamWriter 写入   释放 using 中释放 File 可读可写  小文件 操作文 ...

随机推荐

  1. CTF中PHP反序列化和命令注入的一次简单利用

    代码来自第六届防灾科技学院网络安全技能大赛,侵删. 目标 获取Linux服务器根目录下的flag 代码 /*home.php*/ class home{ private $method; privat ...

  2. 博客&git收藏

    阿里中间件团队博客 http://jm.taobao.orgkimmking https://blog.csdn.net/KimmKing/article/details/71517053 greys ...

  3. Twisted框架学习

    Twisted是用Python实现的基于事件驱动的网络引擎框架,是python中一个强大的异步IO库.理解twisted的一个前提是弄清楚twisted中几个核心的概念: reactor, Proto ...

  4. 008-centos6.5搭建web服务【nginx-tomcat8-jre8】

    一.机器配置 yum install vim 1.1.Linux最大进程以及打开文件数 ulimit -n和-u可以查看linux的最大进程数和最大文件打开数. ulimit -a 展示所有 临时方法 ...

  5. 数据结构之AVL

    简介: 一棵AVL树有如下必要条件: 条件一:它必须是二叉查找树.(左<根<右) 条件二:每个节点的左子树和右子树的高度差至多为1. AVL相关概念: 平衡因子:将二叉树上节点的左子树高度 ...

  6. c++ STL之map

    map内部自建一颗红黑树(一 种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,map中的元素是自动按Key升序排序,所以不能对map用sort函数: ...

  7. Scala面向对象02

  8. MATLAB学习(二)读写xls文件

    >> N=xlsread('DRINK.xls','DRINK','A1:D8') N = 207.2000 3.3000 15.5000 2.8000 36.8000 5.9000 12 ...

  9. JAVA 基础编程练习题6 【程序 6 求最大公约数及最小公倍数】

    6 [程序 6 求最大公约数及最小公倍数] 题目:输入两个正整数 m 和 n,求其最大公约数和最小公倍数. 程序分析:利用辗除法. package cskaoyan; public class csk ...

  10. VS Code 的插件位置更改

    --extensions-dir 你的目标文件夹 原来的目标位置:"E:\Program Files\VSCode\Code.exe" 更改后的位置:"E:\Progra ...