Qu'est ce qu'un "fichier régulier" en Java?

la classe BasicFileAttributes , pour l'examen des propriétés d'un fichier dans le système de fichiers, a la méthode isRegularFile () . Malheureusement, la description de Javadoc fait plutôt défaut:

Indique si le fichier est un fichier régulier opaque contenu.

Qu'est-ce que cela signifie? C'est quoi un fichier régulier opaque contenu? Je peux dire de l'autre méthodes dans la classe que ce n'est pas un répertoire ou un lien symbolique, donc je suis enclin à penser que c'est tout le reste. Cependant, il y a apparemment un certain type de" fichier irrégulier "parce qu'il existe une méthode appelée isOther () , qui renvoie true si ce n'est pas un répertoire, un lien symbolique, ou un"fichier régulier".

qu'est-ce qu'un fichier régulier en Java?

21
demandé sur Thunderforge 2013-12-12 19:18:39

3 réponses

Par exemple, sous UNIX, un fichier régulier est celui qui n'est pas spécial d'une certaine façon. Les fichiers spéciaux comprennent des liens symboliques et des répertoires. Un fichier est une séquence d'octets stockés de façon permanente dans un système de fichiers.

Lisez cette réponse @ UNIX & Linux stackexchange: qu'est Ce qu'un fichier?

je pense que rm-i est un alias, peut-être rm-I. La partie "normale" ne signifie quelque chose en particulier, il signifie que ce n'est pas une pipe, dispositif, prise ou autre chose "spécial".

signifie que le fichier n'est pas un lien symbolique, un tube, Un rand, un null, un cpu, etc. Peut-être avez-vous entendu la philosophie linux tout est un texte. Ce n'est pas littéralement vrai, mais il suggère une dominante contexte opérationnel où les outils de traitement de chaîne peuvent être appliqués aux éléments du système de fichiers directement. Dans ce cas, cela signifie que de façon plus littérale. De voir l'étape de détection dans l'isolement, essayez le fichier de commande dans le fichier /etc/passwd ou d'un fichier /dev/null.

12
répondu Jorgesys 2017-04-13 12:36:28

à Partir de Fichiers de Référence - AIX d'IBM

Un fichier est une collection de données qui peuvent être lues ou écrites. Un fichier peut être un programme que vous créez, un texte que vous écrivez, des données que vous acquérez, ou un périphérique que vous utilisez. Les commandes, les imprimantes, les terminaux et les programmes d'application sont tous stockés dans des fichiers. Cela permet aux utilisateurs d'accéder à divers éléments du système de façon uniforme et donne le système d'exploitation d'une grande souplesse. Aucun format n'est implicite quand un fichier est créé.

il y a trois types de fichiers

  • Régulier - Stocke les données (texte, binaire exécutable).
  • répertoire-contient l'information utilisée pour accéder à d'autres fichiers.
  • spécial-définit un fichier FIFO (first-in, first-out) ou un dispositif physique.

fichiers Réguliers sont les plus courants. Lorsqu'un programme de traitement de texte est utilisé pour créer un document, le programme et le document sont contenues dans des fichiers normaux.

fichiers Réguliers contenir du texte ou des informations binaires. Texte fichiers sont lisibles par l'utilisateur. Les fichiers binaires sont lisibles par l'ordinateur. Les fichiers binaires peuvent être des fichiers exécutables qui instruisent le système d'accomplir un travail. Commandes, scripts shell, et d'autres programmes sont stockés dans des fichiers exécutables.

annuaires contiennent l'information dont le système a besoin pour accéder à tous les types de fichiers, mais ils ne contiennent pas les données réelles du fichier. En conséquence, les répertoires occupent moins d'espace qu'un fichier ordinaire et donnent à la structure du système de fichiers souplesse et profondeur. Chaque entrée de répertoire représente un fichier ou sous-répertoire et contient le nom d'un fichier et l'i-node (nœud d'index de référence). L'i-nœud nombre représente l'unique i-nœud qui décrit l'emplacement des données fichier. Les répertoires sont créés et contrôlés par un ensemble distinct de commandes. Voir "répertoires" dans la gestion du système D'exploitation et de l'appareil pour plus d'informations.

dossiers spéciaux définir des dispositifs pour le système ou des fichiers temporaires créés par des processus. Il existe trois types de fichiers spéciaux: FIFO (first-in, first-out), block et character. Les fichiers FIFO sont aussi appelés pipes. Les tuyaux sont créés par un processus pour autoriser temporairement les une communication avec un autre processus. Ces fichiers cessent d'exister à la fin du premier processus. Les fichiers de blocs et de caractères définissent les périphériques.

Tout ce qui précède vient du premier lien. J'ai consulté de nombreuses autres sources concernant les différences entre les systèmes opérationnels et il semble que celle-ci soit la définition la plus courante de toutes les sources que j'ai trouvées.

5
répondu Jorge Campos 2013-12-12 15:33:45

Je ne suis pas un expert en la matière mais à première vue BasicFileAttributes n'est pas une classe mais une interface. Donc que ce soit un fichier régulier est dépend de l'implémentation de cette interface. Je peux voir qu'il y a par exemple la classe WindowsFileAttributs qui implémente cette interface.

si vous avez un oeil à la OpenJDK version de cette classe, vous trouverez qu'il est

!isSymbolicLink() && !isDirectory() && !isOther();

obtenez toutes les autres informations à partir du code ;-)

4
répondu FrVaBe 2013-12-12 15:37:20