我认为这个问题对于 Stack Overflow 来说已经足够技术了,对于Android来说可能过于面向编程。我对 Android(或 Java 或 Linux,视情况而定)如何处理文件很感兴趣,因为我用我的新智能手机做了一些事情,我很想知道它是如何发生的。
我正在通过蓝牙将文件从笔记本电脑传输到我的 Android 手机。我在文件资源管理器中看到了新文件,假设它已完全传输,因此将其/sdcard/bluetooth
从/sdcard/torrents
. 在我这样做之后,我注意到它实际上仍在被转移。令我惊讶的是,它成功完成,通过手机上的通知图标确认,并通过双方的手动 MD5 检查。在大多数系统中,文件移动会导致崩溃。
这次转让成功的原因是什么?我知道,通常,文件路径与文件系统上的文件位置(在本例中为 SD 卡)是分开的。我想蓝牙应用程序已经打开了文件的句柄,当我移动文件时,“打开文件”表被更新为新路径。这个特性在任何 Linux 系统中都普遍存在吗?我可以mv
对正在写入的文件执行操作并期望副本 - 在其新位置 - 是正确的吗?