【问题标题】:Get disk space available for application on Mac获取可用于 Mac 上的应用程序的磁盘空间
【发布时间】:2014-08-04 11:26:51
【问题描述】:

我目前正在使用 Unity3D,并使用 C# 作为我的主要脚本语言。我的应用程序从服务器下载了一些资产,我需要确保有足够的可用空间。我的资产在 Application.persistentDataPath 给出的路径中。

我需要检查这个是否是 Mac Standalone 版本!

有谁知道如何检查这个,最好是在 Unity C# 中,但我可以使用本机代码,如果必须的话!

更新:

看到@Marius George 的回答后,我只是想知道一些细节:这些方法为我提供了有关所有驱动器的信息。我需要的只是我的应用程序的信息,不一定是所有驱动器(我的应用程序可能无法访问所有磁盘空间)。任何想法如何获得我真正需要的驱动器?

【问题讨论】:

    标签: c# macos unity3d storage


    【解决方案1】:

    我认为 System.IO.DriveInfo 类适用于某些平台:

    http://forum.unity3d.com/threads/disk-space-available.119725/

    看看这是否适用于 Mac。

    【讨论】:

    • 是的,这适用于 Mac。类似于:Debug.Log(new System.IO.DriveInfo("/").AvailableFreeSpace);
    • 我见过这个,但是它在 Unity3D 编辑器中似乎不起作用,因为它显示“NotImplementedException:请求的功能未实现”。它可以在 Mac 的独立版本中工作吗?
    • 您是否尝试过 Khakionion 显示的 ("/") 选项?也许这适用于安装您的应用程序的当前驱动器。
    • 我确实尝试过,但是我不确定返回的值是否正确... 不知何故,AvailableFreeSpace 高于 TotalFreeSpace,甚至高于 TotalSize... 而这些值不是根据我在测试设备上看到的内容。也许我弄错了什么? (返回的值是以位为单位的,对吗?我已经对位和字节转换进行了双重检查,但在这两种情况下似乎都不正确)
    • 刚查过(不知道之前为什么漏掉了),返回值是字节。但是,这些值在某种程度上仍然是错误的。也许我遗漏了一些关于硬盘的明显内容?
    猜你喜欢
    • 2010-11-26
    • 2019-12-12
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    • 2011-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多