我们偶尔会用到文件操作,其中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进行常见的操作的更多相关文章

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

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

  2. [LeetCode] Longest Absolute File Path 最长的绝对文件路径

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  3. Longest Absolute File Path

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  4. Leetcode: Longest Absolute File Path

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  5. [Swift]LeetCode388. 文件的最长绝对路径 | Longest Absolute File Path

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  6. Leetcode算法比赛----Longest Absolute File Path

    问题描述 Suppose we abstract our file system by a string in the following manner: The string "dir\n ...

  7. Longest Absolute File Path -- LeetCode

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  8. [LeetCode] 388. Longest Absolute File Path 最长的绝对文件路径

    Suppose we abstract our file system by a string in the following manner: The string "dir\n\tsub ...

  9. 【leetcode】388. Longest Absolute File Path

    题目如下: Suppose we abstract our file system by a string in the following manner: The string "dir\ ...

随机推荐

  1. JDBC连接错误(Illegal mix of collations。。。)

    连接java和mysql时出现了这样的报错: java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) ...

  2. Flume总结(1)

    一.日志采集:从网络端口接收数据,下沉到logger 文件netcat-logger.conf: # Name the components on this agent #给那三个组件取个名字 a1. ...

  3. day_1 练习2

    #!/usr/bin/env python# -*- coding:utf-8 -*-'''b. 功能要求: v = 2000 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品 ...

  4. 浅析SQL Server数据库中的伪列以及伪列的含义

    SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个 ...

  5. 学习笔记:javascript内置对象:数组对象

    1.数组对象的创建   1.设置一个长度为0的数组  var myarr=new array(); 2.设置一个长度为n的数组  var myarr=new arr(n); 3.声明一个赋值的指定长度 ...

  6. System.arraycopy(src, srcPos, dest, destPos, length) 与 Arrays.copyOf(original, newLength)区别

    //System.arraycopy,只拷贝已存在的数组元素 int[] src = {0, 1, 2}; int[] dest = new int[3]; System.arraycopy(src, ...

  7. UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 22: invalid continuation byte

    在使用python读取文本文件,一般会这样写: # -*- coding:utf-8 -*- f = open("train.txt", "r", encodi ...

  8. Lua学习(3)——控制结构

    Lua提供了一组传统的,小巧的控制结构,包括用于条件执行的if,用于迭代的while.repeat和for.所有的控制结构都有一个现实的终止符号:if for while 都以end结尾,repeat ...

  9. set集合(一)

    set 叫做集合  作用:  去重(去除重复) 举例-- >>> name_list = ['alben','nichole','lucy','andy','tom','alben' ...

  10. php回调函数的使用

    1.array_map — 将回调函数作用到给定数组的单元上 参数:array array_map ( callable $callback , array $arr1 [, array $... ] ...