使用File、Path和Directory进行常见的操作
我们偶尔会用到文件操作,其中File、Path和Directory这三个类是比较常见的,今天写了一个测试demo,也是顺便学习一下,记录一二。
BTW,使用这几个类的时候需要引用using System.IO命名空间。
class Program
{
static void Main(string[] args)
{
//ProcessPath();
//ProcessFile();
//ReadFileByByteArray();
//ReadFileByAllLines();
//ReadFileByAllText();
//WriteFileByByteArray();
//WriteFileByLines();
//WriteFileByText();
UseDirectory();
Console.ReadKey();
}
/// <summary>
/// path类只是在string层面进行操作
/// </summary>
private static void ProcessPath()
{
string path = @"C:\Users\Administrator\Desktop\XX-Net.txt";
string directory = Path.GetDirectoryName(path);
string fileName = Path.GetFileName(path);
string fileNamenoExtension = Path.GetFileNameWithoutExtension(path);
string fileExtension = Path.GetExtension(path);
string ss = Path.ChangeExtension(path, "csv");
Console.WriteLine($"directory is {directory},fileName is {fileName},file without extension is{fileNamenoExtension},extension is {fileExtension},new file is{ss} ");
}
private static void ProcessFile()
{
string path = @"C:\Users\Administrator\Desktop\2.txt";
//File.Create(path);
//File.Delete(path);
//File.Copy(path, @"C:\Users\Administrator\Desktop\3.txt");
File.Move(path, @"C:\Users\Administrator\Desktop\4.txt");
Console.WriteLine("creat successfully...");
}
private static void ReadFileByByteArray()
{
string path = @"C:\Users\Administrator\Desktop\3.txt";
byte[] fileByte = File.ReadAllBytes(path);
string fileByByte = Encoding.Default.GetString(fileByte);
Console.WriteLine(fileByByte);
}
private static void ReadFileByAllLines()
{
string path = @"C:\Users\Administrator\Desktop\3.txt";
string[] fileLines = File.ReadAllLines(path,Encoding.Default);
foreach (var line in fileLines)
{
Console.WriteLine(line);
}
}
private static void ReadFileByAllText()
{
string path = @"C:\Users\Administrator\Desktop\3.txt";
string fileText = File.ReadAllText(path,Encoding.Default);
Console.WriteLine(fileText);
}
private static void WriteFileByByteArray()
{
string path = @"C:\Users\Administrator\Desktop\1.txt";
string fileStr = "大家好,我来了,我的号码是1388888888";
byte[] fileByte = Encoding.Default.GetBytes(fileStr);
File.WriteAllBytes(path, fileByte);
Console.WriteLine("Write Sucessfully...");
}
private static void WriteFileByLines()
{
string path = @"C:\Users\Administrator\Desktop\1.txt";
string[] fileArray = { "你好","我的名字","叫Tom","我来自安徽省阜阳市太和县","他们","都知道我是个好人" };
File.WriteAllLines(path, fileArray);
Console.WriteLine("Write Sucessfully...");
}
private static void WriteFileByText()
{
string path = @"C:\Users\Administrator\Desktop\1.txt";
//File.WriteAllText(path, "落霞与孤鹜齐飞,秋水共长天一色。");
File.AppendAllText(path, "宜将剩勇追穷寇,不可沽名学霸王!");
Console.WriteLine("Write Sucessfully...");
}
private static void UseDirectory()
{
//Directory.CreateDirectory(@"C:\Users\Administrator\Desktop\NewFolder");
//Directory.Delete(@"C:\Users\Administrator\Desktop\NewFolder",true);
string[] files = Directory.GetFiles(@"D:\迅雷下载", "*.rmvb",SearchOption.TopDirectoryOnly);
foreach (var file in files)
{
Console.WriteLine(file);
}
Console.WriteLine("Get File Successfully...");
}
}
使用File、Path和Directory进行常见的操作的更多相关文章
- C#基础精华04(文件流,文件操作,File、Directory、Path,Directory)
文件流 FileStream 可读可写 大文件 释放 StreamReader 读取 释放 StreamWriter 写入 释放 using 中释放 File 可读可写 小文件 操作文 ...
- [LeetCode] Longest Absolute File Path 最长的绝对文件路径
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- Longest Absolute File Path
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- Leetcode: Longest Absolute File Path
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- [Swift]LeetCode388. 文件的最长绝对路径 | Longest Absolute File Path
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- Leetcode算法比赛----Longest Absolute File Path
问题描述 Suppose we abstract our file system by a string in the following manner: The string "dir\n ...
- Longest Absolute File Path -- LeetCode
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- [LeetCode] 388. Longest Absolute File Path 最长的绝对文件路径
Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...
- 【leetcode】388. Longest Absolute File Path
题目如下: Suppose we abstract our file system by a string in the following manner: The string "dir\ ...
随机推荐
- linux-redhat-iso 下载
http://archive.download.redhat.com/pub/redhat/linux/9/en/iso/i386/ http://www.jb51.net/do/plus/downl ...
- zabbix常见问题整理 持续更新……
[toc] 1.zabbix仪表板错误 问题: zabbix server is not running: the information displayed may not be current 解 ...
- Linux下的Jenkins+Tomcat+Maven+Gitlab+Shell环境的搭建使用(jenkins自动化部署)
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- tomcat启动一闪而过问题的解决
1.今天使用startup.bat启动tomcat报错,现象是一闪而过,在logs文件夹中有没有日志文件, 可以在控制台输入startup.bat,如下: 但是也没有看出什么太有用的错误,然后可以 ...
- 文本主题模型之LDA(二) LDA求解之Gibbs采样算法
文本主题模型之LDA(一) LDA基础 文本主题模型之LDA(二) LDA求解之Gibbs采样算法 文本主题模型之LDA(三) LDA求解之变分推断EM算法(TODO) 本文是LDA主题模型的第二篇, ...
- python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence
python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal m ...
- swift学习 - collectionView
swift CollectionView学习 效果图: 源码: ContModel.swift import UIKit class ContModel: NSObject { var title:S ...
- java日期工具类(Long型,Date型,yyyyMMdd型)等
import java.sql.Timestamp; import java.text.ParsePosition; import java.text.SimpleDateFormat; import ...
- SVN如何迁移到Git?
最近在使用华为软件开发云进行开发项目管理,目前华为软件开发云支持500M的免费项目空间,而且还可以在线编译和构建,不用担心开发环境和生产环境的不同,很好的体现了DevOps的开发理念. 之前一直是用s ...
- 以太坊RLP用法-go-ethereum学习
RLP (递归长度前缀)提供了一种适用于任意二进制数据数组的编码,RLP已经成为以太坊中对对象进行序列化的主要编码方式.RLP的唯一目标就是解决结构体的编码问题:对原子数据类型(比如,字符串,整数型, ...