C# Path类及FileInfo类测试

        static void Main(string[] args)
        {
            string fileFullName = @"C:\Program Files\X2009\My.tXt";

            //更改路径字符串的扩展名
            Console.WriteLine(Path.ChangeExtension(fileFullName, ".doX"));

            //将两个字符串组合成一个路径
            Console.WriteLine(Path.Combine("a", "b"));
            Console.WriteLine(Path.Combine("a\\", "b"));
            Console.WriteLine(Path.Combine("a", "b\\"));
            Console.WriteLine(Path.Combine("a\\", "\\b")); //结果为 \b

            //返回指定路径字符串的目录信息
            Console.WriteLine(Path.GetDirectoryName(fileFullName));

            //返回指定的路径字符串的扩展名
            Console.WriteLine(Path.GetExtension(fileFullName));

            //返回指定路径字符串的文件名和扩展名
            Console.WriteLine(Path.GetFileName(fileFullName));

            //返回不具有扩展名的指定路径字符串的文件名
            Console.WriteLine(Path.GetFileNameWithoutExtension(fileFullName));

            //返回指定路径字符串的绝对路径
            Console.WriteLine(Path.GetFullPath(fileFullName));

            //获取包含不允许在文件名中使用的字符的数组
            char[] cc = Path.GetInvalidFileNameChars();
            string result = "";
            foreach (char c in cc)
                result += c + ",";
            Console.WriteLine(result);

            //获取包含不允许在路径名中使用的字符的数组
            cc = Path.GetInvalidPathChars();
            result = "";
            foreach (char c in cc)
                result += c + ",";
            Console.WriteLine(result);

            //获取指定路径的根目录信息
            Console.WriteLine(Path.GetPathRoot(fileFullName));

            //返回随机文件夹名或文件名
            Console.WriteLine(Path.GetRandomFileName());

            //在磁盘上创建磁唯一命名的零字节的临时文件并返回该文件的完整路径
            Console.WriteLine(Path.GetTempFileName());

            //返回当前用户的临时文件夹的路径
            Console.WriteLine(Path.GetTempPath());

            //确定路径是否包括文件扩展名
            Console.WriteLine(Path.HasExtension(fileFullName));

            //获取一个值,该值指示指定的路径字符串是否包含根
            Console.WriteLine(Path.IsPathRooted(fileFullName));

            //字段
            //提供平台特定的替换字符,该替换字符用于在反映分层文件系统组织的路径字符串中分隔目录级别
            Console.WriteLine(Path.AltDirectorySeparatorChar + "," +
                //提供平台特定的字符,该字符用于在反映分层文件系统组织的路径字符串中分隔目录级别
                Path.DirectorySeparatorChar + "," +
                //用于在环境变量中分隔路径字符串的平台特定的分隔符
                Path.PathSeparator + "," +
                //提供平台特定的卷分隔符
                Path.VolumeSeparatorChar);

            Console.WriteLine("--------------------------------------------------");
            //FileInfo类也可以在路径不存在的情况下获取部分信息
            FileInfo fileInfo = new FileInfo(fileFullName);
            Console.WriteLine(fileInfo.Directory.Parent.FullName);  //可以方便的获取父路径
            Console.WriteLine(fileInfo.DirectoryName);
            Console.WriteLine(fileInfo.Extension);
            Console.WriteLine(fileInfo.FullName);
            Console.WriteLine(fileInfo.Name);

            Console.ReadLine();
        }

测试结果:

C:\Program Files\X2009\My.doX
a\b
a\b
a\b\
\b
C:\Program Files\X2009
.tXt
My.tXt
My
C:\Program Files\X2009\My.tXt
",<,>,|, ,,,,,,,  ,
,,,,,,,,,,,,,,,,,,,:,*,?,\,/,
",<,>,|, ,,,,,,,  ,
,,,,,,,,,,,,,,,,,,,
C:\
pbbdtbm0.35k
C:\Users\X2009\AppData\Local\Temp\tmp53CE.tmp
C:\Users\X2009\AppData\Local\Temp\
True
True
/,\,;,:
--------------------------------------------------
C:\Program Files
C:\Program Files\X2009
.tXt
C:\Program Files\X2009\My.tXt
My.tXt

 

参考:
https://msdn.microsoft.com/zh-cn/library/system.io.path.aspx

转载于:https://www.cnblogs.com/x2009/p/8029507.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值