【C#读写隐藏分区中的文件】在Windows中没有盘符

Console.WriteLine("Hello, World!");


//获取DeviceId
ManagementClass managementClass = new ManagementClass("win32_volume");
ManagementObjectCollection managementObjectCollection = managementClass.GetInstances();

foreach (ManagementObject managementObject in managementObjectCollection)
{
    Console.WriteLine("DeviceID: {0}", managementObject["DeviceID"].ToString());
    Console.WriteLine("DriveLetter: {0}", managementObject["DriveLetter"]?.ToString());
    Console.WriteLine("Label: {0}", managementObject["Label"]?.ToString());
    //Console.WriteLine("VolumeName: {0}", managementObject["VolumeName"].ToString());
    Console.WriteLine("-------------------------------");
}

managementObjectCollection.Dispose();
managementClass.Dispose();


//通过使用Volume读写文件
var volumePath = @"\\?\Volume{8aac4aa1-8282-46c7-8cf0-2c93a0b803f5}\demo";
Directory.CreateDirectory(volumePath);

var volumeFile = @$"{volumePath}\demo.log";
//写入
using (var fsw = new FileStream(volumeFile, FileMode.OpenOrCreate, FileAccess.Write))
{
    using var writer = new StreamWriter(fsw);
    writer.Write(DateTime.Now.ToString("G"));
    writer.Flush();
}

//读取
using (var fs = new FileStream(volumeFile, FileMode.Open, FileAccess.Read))
{
    using var reader = new StreamReader(fs);

    // 读取设备信息
    string driveInfo = reader.ReadToEnd();
    Console.WriteLine(driveInfo);
}
  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值