public void PrintFile(StorageFile file)
 {
     if (file != null)
     {
         count++;
         Debug.WriteLine(this.getCount() + PtcEncoder.Decode(file.Name) + "(" + file.Path + ")");
         count--;
     }
 }
        /// <summary>
        /// Get SkyDrive Download Uri by path
        /// </summary>
        /// <returns>The Uri for download location</returns>
        public async Task <Uri> GetSkyDriveDownloadUriFromPath(string path)
        {
            string name;
            string ori_path = path;

            string[]      list   = ParseHelper.ParsePathAndName(path, ParseHelper.Mode.FULL_PATH, out name);
            StorageFolder folder = await this.GetSkyDriveStorageFolderAsync();

            foreach (string s in list)
            {
                folder = await folder.CreateFolderAsync(s, CreationCollisionOption.OpenIfExists);
            }

            return(new Uri(PtcEncoder.Encode("/" + LocalStorageManager.ONE_DRIVE_DIRECTORY + LocalStorageManager.ONE_DRIVE_FOLDER + (ori_path.StartsWith("/") ? ori_path : "/" + ori_path)), UriKind.Relative));
        }
        public async Task PrintFolderAsync(StorageFolder folder)
        {
            if (folder != null)
            {
                count++;
                Debug.WriteLine(this.getCount() + "folder : " + PtcEncoder.Decode(folder.Name) + "(" + folder.Path + ")");
                IReadOnlyList <StorageFile> fileList = await folder.GetFilesAsync();

                IReadOnlyList <StorageFolder> folderList = await folder.GetFoldersAsync();

                foreach (StorageFile file in fileList)
                {
                    PrintFile(file);
                }
                foreach (StorageFolder _folder in folderList)
                {
                    await PrintFolderAsync(_folder);
                }
                count--;
            }
        }