2011-11-18 1 views
1

J'utilise JackRabbit Webdav Client pour Android.Je n'arrive pas à obtenir la taille du dossier spécifique. Y at-il un moyen de trouver ceci? Pour un fichier getContentLength la propriété renvoie la longueur.Cette propriété n'est pas disponible pour le dossier.JackRabbit Webdav: Comment connaître l'espace total occupé par un dossier

Merci à l'avance, Sha

+0

Copie possible: http://stackoverflow.com/questions/4040912/how-can-i-get-the-size-of-a-folder-on-sd-card-in-android – Dalmas

Répondre

0

Vous devriez être en mesure de recueillir ces informations avec une demande PROPFIND pour la propriété D:contentlength. Selon le serveur WebDAV auquel vous accédez, vous devez renvoyer la taille de tous les fichiers de ce dossier (avec Depth: 1) ou l'intégralité de la sous-arborescence (avec Depth: infinity).

Vous devez toujours parcourir les valeurs renvoyées pour calculer la somme de toutes les tailles de fichier individuelles, mais au moins, vous n'aurez besoin que d'une seule requête HTTP pour cela.

+0

Merci. vérifie et vous informe – sha

+0

** Depth: inifinity ** renvoie une exception interdite. Qu'est-ce que cela signifie? ** Profondeur: 1 ** et ** Profondeur: 0 ** fonctionnent bien. – sha

+1

Il semble que le serveur WebDAV auquel vous accédez n'autorise pas les requêtes Depth: infinity. Sans cette fonctionnalité, votre client devra recurrenter le sous-arbre, en appelant PROPFIND avec Depth: 1 sur tous les sous-répertoires pour collecter les tailles de tous les fichiers inclus dans le sous-arbre. –

Questions connexes