2016-08-26 130 views
1

我使用FileStream和BinaryWriter創建一些二進制文件,並將該文件放入MyDocuments中。但事情是,當我離開瀏覽器窗口打開時,我看到重複的文檔文件夾。System.IO.FileStream在資源管理器中創建重複文件夾

我做錯了什麼或在Windows中有bug?

如果我關閉並重新打開資源管理器,額外的文檔文件夾消失。這並不是什麼大問題,但它會造成一種令人討厭的客戶體驗。

代碼

var fileName = "FileStreamTest_{0:yyyyMMdd_HHmmss}.bin"; 
var filePath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); 
string file = Path.Combine(filePath, string.Format(fileName, DateTime.Now)); 
short length = 5; 

using (var fs = new FileStream(file, FileMode.Create, FileAccess.Write, FileShare.None)) 
{ 
    using (BinaryWriter writer = new BinaryWriter(fs)) 
    { 
     writer.Write(length); 
     for (int i = 0; i < length; i++) 
     { 
      writer.Write((float)i); 
     } 
    } 
} 

瀏覽器

Duplicating Documents

附錄

我應該澄清。這實際上並不複製文件夾C:\ users \ 用戶名 \ Documents。重複是在Windows資源管理器導航窗格中顯示該文檔文件夾的鏈接。

  • 環境:Windows 10教育
  • .NET版本:4.6.1
+0

當我運行你的代碼時, P – BugFinder

+0

爲什麼你調用'writer.Write()'兩次?此外,這些文件不是由您的發佈代碼創建的 – Rahul

+0

@Rahul第一次寫入寫入元素的數量,第二次將它們放入.. – BugFinder

回答

0

我不認爲這是你的代碼引起的。您有沒有爲Win 10中的Documents文件夾定義非標準位置?如果是這樣,那可能是一個促成因素。在過去的幾周裏,我一直在瘋狂地谷歌搜索,沒有任何運氣找到修復。

在我的機器上,任何對Documents文件夾內文件的寫入操作都會觸發問題 - 甚至會複製文件。當我輸入時,我在「This PC」下有19個重複的「文檔」鏈接。無害(看似),但令人發狂。

更新:這是修復/解決方法。導航欄會有點混亂,但比現狀要好。在文件資源管理器中,進入查看 - >選項 - >更改文件夾和搜索選項 - >查看 - >向下滾動到'導航窗格' - > [X]顯示所有文件夾

相關問題