none
在安装目录下用代码创建文件的几个问题 RRS feed

  • 问题

  • 用foreach循环创建文件夹,最后一个文件夹会创建2个。

    如:

    private string[] folders = { "a", "新建文件夹", "testFolder", "照片" };
     foreach (var folder in folders)
       {
              StorageFolder localFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
                    await localFolder.CreateFolderAsync(folder , CreationCollisionOption.GenerateUniqueName)                      
       }

    上面代码执行后,照片文件夹会被创建2次。分别为:照片、照片(2)两个文件夹。

    如果把上面代码中的

    CreationCollisionOption.GenerateUniqueName

    改成

    CreationCollisionOption.ReplaceExisting

    的话,又报错,提示什么拒绝访问之类的。

    谁知道这是怎么回事吗?

    2014年6月10日 9:40

答案

  • 你好 roomanl,

    我测试了一下 CreationCollisionOption.GenerateUniqueName 完全没有问题啊。。。

    不过当测试 CreationCollisionOption.ReplaceExisting 的时候貌似也会报错,不过不是拒绝访问,而是不可以创建已经存在的文件夹。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    • 已标记为答案 roomanl 2014年6月11日 8:55
    2014年6月11日 6:59
    版主

全部回复

  • 你好 roomanl,

    我测试了一下 CreationCollisionOption.GenerateUniqueName 完全没有问题啊。。。

    不过当测试 CreationCollisionOption.ReplaceExisting 的时候貌似也会报错,不过不是拒绝访问,而是不可以创建已经存在的文件夹。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    • 已标记为答案 roomanl 2014年6月11日 8:55
    2014年6月11日 6:59
    版主
  • 你好,

    原来是我鼠标问题。在我对我出现这个问题快崩溃时,我发现我的鼠标单击的时候经常变双击。所以文件夹会被创建2次。

    2014年6月11日 8:54
  • 还有一个问题就是用CreationCollisionOption.ReplaceExisting 依然报错,不管要创建的文件夹存不存在都报错
    2014年6月11日 9:46