File: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Unione da Formato di file
Elementi caratterizzanti: formattazione +fonti +fix minori
Riga 77:
Ogni file ha bisogno di essere associato ad un [[identificatore]] univoco per poter essere distinto dagli altri in una medesima collezione.
Molto spesso l'identificatore costituisce di una [[stringa (informatica)|stringa testuale]] del tipo [[Uniform Resource Identifier|URI]].
Il particolare sottotipo di URI utilizzato dipende dal tipo di collezione nel quale risiede il file. Tipicamente i file sono organizzati in [[directory]] e come identificatore viene usata l'indicazione della posizione del file all'interno di questa, chiamata ''"[[percorso]]''".
 
Un altro tipo di identificatore, decisamente meno univoco, è il nome del file. Nei sistemi basati su directory il nome coincide con l'ultimo componente del percorso.
Riga 88:
 
==== Formato ====
{{vedi anche|Formato di file|Estensione (informatica)}}
 
I file, quali generici contenitori di dati e spesso anche di grandi dimensioni, sono caratterizzati da una [[struttura dati|struttura]] interna ad-hoc.<ref name="Silberscharz. Struttura dei file">{{cita|Silberscharz, Galvin, Gagne 2019|p. 584-585}}.</ref>
Lo schema di questa struttura definisce il cosiddetto formato del file.<ref>
{{Cita web
|url = https://www.computerhope.com/jargon/f/file-format.htm
|titolo = What is a File Format?
|lingua = en
|accesso = 2021-10-30}}</ref>
</ref><ref name="formati_allegato_2_dpcm_3-12-2013.pdf">
{{cita libro
|titolo = Supplemento ordinario alla “Gazzetta Ufficiale„ n. 59 del 12 marzo 2014 - Serie generale
|url = https://www.gazzettaufficiale.it/eli/gu/2014/03/12/59/so/20/sg/pdf
|numero = 20
|sezione = Allegato 2. Formati
|url_capitolo = https://www.agid.gov.it/sites/default/files/repository_files/leggi_decreti_direttive/formati_allegato_2_dpcm_3-12-2013.pdf
|collana = [[Gazzetta Ufficiale della Repubblica Italiana]]
|data = 2014-03-12
}}
</ref>
 
Essendo la struttura necessariamente pensata per specifiche applicazioni, spesso è necessario utilizzare specifici programmi per manipolare il file in modo sostanziale.
Fanno eccezione a questa "regola" una ristretta selezione di formati di uso particolarmente ampio, tant'è che molti sistemi operativi integrano già strumenti adatti a manipolarli.<ref name="Silberscharz. Struttura dei file"/>
<ref name="estensioni comuni in MSWIN"/>
Sono parte di questa categoria i formati così detticosiddetti di ''"[[file di testo|testo semplice]]'' ( in inglese ''plain-text'' )" poiché basati sulla [[codifica]] [[ASCII]] oppure [[Unicode]].<ref>{{cita libro
|autore = Paul Murrell
|titolo = Introduction to Data Technologies
Line 110 ⟶ 124:
Tra i più famosi non si possono non citare [[JSON]], [[TOML]], [[YAML]] ed [[XML]].
 
Il formato è convenzionalmente indicato attraverso l'[[Estensione (file)|estensione]] del file, ovvero una serie di [[carattere (informatica)|caratteri]] suffissi al nome per mezzo di un punto. Ad esempio, un file denominato "prova.txt" va interpretato come [[file di testo]], mentre "prova.jpg" contiene un'immagine [[JPEG]].
Alcuni sistemi operativi, come [[Microsoft Windows]] e l'[[MS-DOS]], riconoscono il formato di un file in base all'estensione del loro nome;<ref name="estensioni comuni in MSWIN" /> altri, come il [[macOS]], da una serie di [[metadato|metadati]] salvati insieme al file; altri ancora, come [[Unix]], identificano i tipi di file in base ai primi byte del loro contenuto, detti ''[[magic number]]''.
Molti sistemi operativi, tra cui notoriamente [[Microsoft Windows]] ed [[MS-DOS]], usano questo metodo per identificare il tipo dei file.<ref name="estensioni comuni in MSWIN" /><ref name="formati_allegato_2_dpcm_3-12-2013.pdf" />
 
Un altro metodo per indicare il formato del file è includere un indizio all'interno del file stesso. Una strategia comune in questo senso sono i ''[[magic number]]'', ovvero delle brevi sequenze di [[byte]] poste in posizioni note all'interno del file (tipicamente all'inizio) che possono essere associate univocamente ad un formato.
===== Tramite l'estensione =====
Questo metodo è comunemente utilizzato in ambienti [[Unix]] e [[Unix-like]], dove la presenza della sequenza [[ASCII]] <code>#!</code> ([[shabang]]) in testa ad un file segnala la sua natura [[eseguibile]].<ref>
{{vedi anche|Estensione (informatica)}}
{{cita web
 
|url = https://docs.kernel.org/admin-guide/binfmt-misc.html
Il formato di un file è per convenzione indicato attraverso l'[[Estensione (file)|estensione]], che è una serie di lettere (in genere tre, per motivi storici del [[formato 8.3]]) unita al nome del file attraverso un punto. Ad esempio, "prova.txt" è un file di testo (o meglio, il suo contenuto va interpretato come testo), mentre "prova.jpg" è un'immagine. [[Microsoft Windows]] ad esempio usa questo metodo per identificare il tipo di file<ref>{{Cita web|url=https://versione-completa.it/blog/elenco-tutte-estensioni-file-windows|titolo=ᐅ Elenco di tutte le estensioni file di Windows|sito=versione-completa.it|accesso=2021-10-30}}</ref><ref>{{Cita web|url=https://www.gaminghw.it/cose-lestensione-di-un-file/|titolo=Cos'è l'estensione di un file: Guida informatica {{!}} Gaminghw|sito=GAMINGHW.IT|data=2021-08-13|lingua=it-IT|accesso=2021-10-30}}</ref>.
|titolo = Kernel Support for miscellaneous Binary Formats (binfmt_misc)
 
|accesso = 2023-12-21
===== Tramite "magic number" =====
|lingua = en
{{vedi anche|Magic number}}
}}
Il formato di un file può anche essere identificato dai primi due o più byte del file (comunemente detti [[magic number]]), ad esempio <code>#!</code> identifica gli script nei sistemi [[Unix]] e [[Unix-like]] (vedi anche [[shabang]]), mentre <code>0xffd8</code> identifica le immagini in formato [[jpeg]]. I sistemi operativi Unix-like utilizzano questo metodo per identificare il tipo di file<ref>{{Cita web|url=https://www.ibm.com/support/pages/what-magic-number|titolo=What is a magic number?|data=2003-08-20|lingua=en|accesso=2021-10-30}}</ref>.
</ref><ref>
 
{{Cita web
===== Tramite metadati espliciti =====
|url=https://www.ibm.com/support/pages/what-magic-number
I [[file system]] [[Hierarchical File System|HFS]] e [[HFS+]] usati sui computer [[macintosh]] affiancano ogni file con informazioni dettagliate sul suo formato, il programma che l'ha creato ecc<ref>{{Cita web|url=https://www.agid.gov.it/sites/default/files/repository_files/leggi_decreti_direttive/formati_allegato_2_dpcm_3-12-2013.pdf|titolo=agid.gov.it}}</ref>.
|titolo=What is a magic number?
|data=2003-08-20
|lingua=en
|accesso=2021-10-30
}}
</ref><ref name="formati_allegato_2_dpcm_3-12-2013.pdf" />
 
In altri casi, come ad esempio sui sistemi [[Macintosh]] e nel ''file system'' [[HFS+]], il formato è indicato nei [[metadati]] del file.
Un approccio simile è usato con i [[Multipurpose Internet Mail Extensions|tipi MIME]] e gli ''[[Internet media type]]'', usati per identificare il formato dei messaggi di posta elettronica o delle comunicazioni del [[World Wide Web]]<ref>{{Cita web|url=https://dia.unipr.it/sites/st27/files/allegatiparagrafo/03-09-2018/allegato_04_tipologie_di_formati_dei_documenti_rev00.pdf|titolo=dia.unipr.it}}</ref>.
Un approccio simile è usato con i file scambiati via [[e-mail]] o sul [[web]], attraverso le [[intestazione (informatica)|intestazioni]] [[Multipurpose Internet Mail Extensions|MIME]] o gli ''[[Internet media type]]''.<ref name="formati_allegato_2_dpcm_3-12-2013.pdf" />
 
=== Implementazione ===