2012-11-14 26 views
2

我正在學習文件屬性枚舉,並有兩個問題,我找不到具體的答案(雖然我有我自己的意見)。文件屬性標誌由代碼或操作系統控制?

我的應用程序檢查是否已設置存檔標誌。在我的測試過程中,我在桌面上創建了一個.txt文件,並移除了歸檔的標誌。然後我打開文件,添加一行文本並保存文件。歸檔屬性被重新設置。這是合乎邏輯的和理想的。

我的第一個問題是,什麼是設置標誌,程序或操作系統?

我的第二個問題是,我是否應該設置標誌或大部分我可以依靠操作系統(假設操作系統是設置標誌的東西)。

+0

你是如何編輯文件的?目前尚不清楚(儘管可能暗示,我不知道)您的應用程序是否正在編輯文件... –

+0

我已編輯您的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –

+0

@AndrasZoltan在這種情況下,只需打開有問題的文件(雙擊),添加文本,然後文件保存並退出! – Dave

回答

2

您可以使用ATTRIB命令行或基礎Windows API(例如,允許「您的代碼」完全控制標誌)來控制歸檔文件屬性標誌。但是,當文件被修改時,歸檔標誌被設置。這不是你在你的應用程序或代碼中必須做的事情。預期使用情況是這樣的:

  • 操作系統創建或修改

  • 備份應用程序(例如,「代碼」)將在文件重新設置標誌文件時,將設置標誌已備份

但是,依賴存檔標誌進行備份可能會有問題,因爲多個獨立的備份應用程序可能正在使用該標誌。

+0

是的,我同意其他程序可能會設置它,但我希望如果一臺家用機器只有一個副本,它會沒事的。或者,更好的是,我會讓用戶選擇(通過標誌,文件大小或M5a散列)。謝謝。 – Dave

+0

備份應用程序不一定會清除存檔位 –

+1

@PaulZahra:不,任何像樣的備份應用程序都不會依賴存檔標誌。但是,在這個問題的背景下(誰負責設置和清除國旗?)它是清除國旗的「備份應用程序」。 –

1

如果自上次備份以來該文件已被「觸摸」,DOS會設置該存檔位。

例如當具有清除存檔位的文件從文件系統上的一個位置移動到另一個位置時,存檔位將恢復爲設置狀態。

+0

「DOS」設置位? –

+0

DOS,如在管理磁盤的操作系統中,例如Unix,Windows –

+0

使用「DOS」這個詞來表示Unix有點奇怪。 –

相關問題