C#学习笔记——I/O类、异常捕获

本文详细介绍了C#中的I/O类,包括Path、File、Directory和Stream及FileStream的使用,特别是File类的编码和操作方法。此外,还深入探讨了异常捕获机制,如try-catch-finally语句和自定义异常的创建。
摘要由CSDN通过智能技术生成

一、I/O类

System.IO 命名空间中有各种不同的类,用于执行各种文件操作,如创建和删除文件、读取或写入文件,关闭文件等。
在这里插入图片描述

1、Path类

该方法主要获取路径、文件夹名称等

using System;
using System.Collections.Generic;
using System.IO;
using System.Text;

namespace LIST
{
   
    class PathClass
    {
   
        static void Main()
        {
   
            //获取文件的扩展名
            Console.WriteLine(Path.GetExtension(@"C:\Users\Administrator\Desktop\新建文本文档.txt"));

            //更改文件的扩展名
            Console.WriteLine(Path.ChangeExtension(@"C:\Users\Administrator\Desktop\新建文本文档.txt","jpg"));

            //获得文所在文件夹的路径
            string str = Path.GetDirectoryName(@"C:\Users\Administrator\Desktop\新建文本文档.txt");
            Console.WriteLine(str);

            //获取文件的名字
            Console.WriteLine(Path.GetFileName(@"C:\Users\Administrator\Desktop\新建文本文档.txt"));
            //活期文件的名字但不包含扩展名
            Console.WriteLine(Path.GetFileNameWithoutExtension(@"C:\Users\Administrator\Desktop\新建文本文档.txt"));

            //连接一个目录和一个文件
            string str2 =  Path.Combine(@"C:\Users\Administrator\Desktop", "新建文本文档.txt");
            Console.WriteLine(str2);

            //获取文件的全部路径
            string str3= Path.GetFullPath(@"C:\Users\Administrator\Desktop\新建文本文档.txt");
            Console.WriteLine(str3);
        }
    }
}

2、File类

1>编码

编码:将数据以怎样的形式保存为二进制

  • 编码发展史
    ----ASC 128
    ----ASCII 256
    ----GB2312 简体字
    ----BIG 繁体字
    ----UniCode(解析慢)
    ----UTF-8(web)

乱码原因:保存文件采用的编码与打开文件采用的编码格式不一样

2>File类相关方法

  • 基本操作
    ---- creat 创建文件
    ---- delete 删除文件
    ---- copy 复制文件
    ---- exists 文件是否存在
    ---- move 移动/剪切文件
    ---- ReadAllBytes、ReadAllLines、ReadAllText 文件读取的三种方式
    ---- WriteAllBytes 、WriteAllLines、WriteAllText 文件覆盖写入的的三种方式
    ---- AppendAllText、AppendAllLines
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;

namespace LIST
{
   
    class Flies
    {
   
        static void Main()
        {
   
            //创建一个文件
            File.Create(@"C:\Users\Administrator\Desktop\new.txt");
            Console.WriteLine("创建成功");

            //删除一个文件
            File.Delete(@"C:\Users\Administrator\Desktop\new.txt");
            Console.WriteLine("删除成功");

            //复制一个文件
            File.Copy(@"C:\Users\Administrator\Desktop\新建文本文档.txt", @"C:\Users\Administrator\Desktop\new.txt");
            Console.WriteLine("复制成功");

            //判存
            bool b= File.Exists(@"C:\Users\Administrator\Desktop\new.txt");
            Console.WriteLine(b);

            //移动/剪切
            File.Move(@"C:\Users\Administrator\Desktop\new.txt", @"C:\Users\x.txt");
            //Console.WriteLine("剪切成功");

            #region ReadAllBytes 按字节读取
            byte[] buffer = File.ReadAllBytes(@"C:\Users\Administrator\Desktop\x.txt");
            //将二进制转换为字符串
            string str = Encoding.Default.GetString(buffer);
            Console.WriteLine(str);
            #
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

聪 ~smart

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值