C#面向对象13 文件类操作 Path/File/FileStream
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的更多相关文章
- java 文件类操作(转载)
11.3 I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程 ...
- Go path/filepath文件路径操作
本文:https://books.studygolang.com/The-Golang-Standard-Library-by-Example/chapter06/06.2.html path:htt ...
- Java NIO 学习笔记(五)----路径、文件和管道 Path/Files/Pipe
目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...
- [No000083]文件与文件夹操作
#region Folder option 文件夹操作 /// <summary> /// 指定目录是否存在 /// </summary> /// <param name ...
- delphi 文件夹操作
文件的拖放和打开拖拽 user shellapi type TForm1 = class(TForm) ListView1: TListView; procedure FormCreate(Sende ...
- 9.2 Go 文件IO操作
9.2 Go 文件IO操作 1.1.1. bufio包 带有缓冲区的IO读写操作,用于读写文件,以及读取键盘输入 func main() { //NewReader返回一个结构体对象指针 reader ...
- C#文件操作常用相关类(Directory类、File类、Path类)
1.文件操作常用相关类 1)File //操作文件,静态类,对文件整体操作.拷贝.删除.剪切等 2)Directory //操作目录(文件夹),静态类 3)DirectoryInfo //文件夹的一个 ...
- 使用File类、StreamRead和StreamWrite读写数据、以及Path类操作文件路径和Directory
1.File类的概念: File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量 ...
- C#基础精华04(文件流,文件操作,File、Directory、Path,Directory)
文件流 FileStream 可读可写 大文件 释放 StreamReader 读取 释放 StreamWriter 写入 释放 using 中释放 File 可读可写 小文件 操作文 ...
随机推荐
- Nginx-HTTP之静态网页访问流程分析二
11. HTTP 阶段执行 下面会依次执行以下阶段: NGX_HTTP_SERVER_REWRITE_PHASE: 在将请求的 URI 与 location 表达式匹配前,修改请求的 URI (所谓重 ...
- caps lock 映射成 esc,右Ctrl映射右移
xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape' xmodmap -e 'clear Lock' -e 'keycode 105= Right'
- Notepad++格式化xml(转)
转自:http://www.herongyang.com/XML/NPP-XML-Tools-Plugin-Download-and-Install.html Downloading and inst ...
- postman设置环境变量,实现一套接口根据选择的环境去请求不同的url
一个系统,有本地,开发,测试,生产等不同的环境,如果写不同的url配置多套会比较麻烦,可以设置不同的环境实现不同的url之间的切换.配置之后如下: 第一步: 第二步: 添加环境变量 ps::不同的环境 ...
- python练习-(秒转时分秒,时分秒转秒)-对比linux中文件的上次更改时间跟当前时间相差多久。
具体代码如下> import paramiko,re,datetime,time ssh=paramiko.SSHClient() ssh.set_missing_host_key_policy ...
- [Java]给指定时间加上十秒
package com.testEmp; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util. ...
- Android Studio NDK编程-环境搭建及Hello!
一,下载 安装android-ndk开发包 NDK各个版本链接二,新建项目NDKDemo,选择空Activity就可以:(注:Android studio 2.2,可通过SDK Tools 添加LLD ...
- Go项目的测试代码1(基础)
最近写了测试代码,整理了一下. 先看看简单的测试代码. // add_test.go ==> 文件名 _test.go 结尾的默认为测试代码文件 package models import ( ...
- 【论文学习】Blind Super-resolution Image Reconstruction Based On Novel Blur Type Identification
机翻 <基于新型模糊类型识别的盲超分辨率图像重建>
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-4.微信授权一键登录开发之授权URL获取
笔记 4.微信授权一键登录开发之授权URL获取 简介:获取微信开放平台扫码连url地址 1.增加结果工具类,JsonData; 增加application.properties配置 ...