Guide détaillé, étape par étape
Le TD manipule les fichiers d’un même texte, le poème The Raven d’Edgar Allan Poe (1845), sous plusieurs formes : un document LibreOffice, un fichier texte, deux pages web. On les exporte, on les copie, on change leur extension et on les ouvre avec différents logiciels, pour comparer ce que décide l’extension et ce que contient le fichier. Il dure une vingtaine de minutes.
Tout se fait avec l’explorateur de fichiers, LibreOffice, un navigateur et deux éditeurs de texte, le Bloc-notes et Notepad++. Aucune commande n’est nécessaire.
Le dossier depart\ contient aussi les mêmes fichiers
pour un second texte, Auld Lang Syne de Robert Burns (1788).
Qui a fini en avance peut refaire les étapes avec lui.
| Étape | Objectif | Ce qu’on fait |
|---|---|---|
| 1 | travailler sur des copies, à côté des fichiers livrés | préparer le dossier du TD |
| 2 | produire un même texte dans plusieurs formats | exporter un même document en trois formats |
| 3 | tester ce que l’extension change à l’ouverture | changer l’extension de copies du document |
| 4 | lire l’adresse d’une page ouverte depuis le disque | ouvrir une page web depuis son disque |
| 5 | comparer fichiers texte et fichiers binaires dans un éditeur | lire les fichiers avec deux éditeurs de texte |
Chaque étape commence par un encadré qui la résume. Ce que chaque étape fait constater est expliqué à la fin du guide, dans « Ce que le TD fait constater » : faire l’étape d’abord, et noter ce qu’on observe, avant de lire l’explication.
À faire : récupérer l’archive de la séance ; afficher les extensions dans l’explorateur ; ouvrir le dossier
cours1\1a_formats\.À obtenir : l’explorateur montre
depart\ettravail\, et les noms de fichiers se terminent par leur extension (raven.odt, pasraven).
Copier l’archive info01-cours1.zip depuis le dossier
partagé formationTemp dans le dossier info01
du Bureau, puis l’extraire dans ce même dossier (clic droit, « Extraire
tout… », en effaçant la fin du dossier proposé). La page « Récupérer les
fichiers d’une séance » du site du cours détaille ces deux opérations.
Ne pas travailler dans le dossier partagé.
Windows masque par défaut les extensions des types de fichiers qu’il connaît. Dans l’explorateur : menu Affichage, Afficher, cocher « Extensions de noms de fichiers ». Sous macOS : Finder, Réglages, Avancé, « Afficher tous les suffixes de fichiers ». Le réglage se fait une fois, et sert tout le semestre.
Ouvrir info01\cours1\1a_formats\. Le dossier contient
:
1a_formats\
├── depart\
│ ├── raven.odt le poème, document LibreOffice
│ ├── raven_une_ligne.txt le poème, en texte sur une seule ligne
│ ├── raven_une_ligne.donnees le même fichier, avec une autre extension
│ ├── raven_brut.html le poème, en page web sans mise en forme
│ ├── raven_style.html la même page, avec une feuille de style
│ ├── style.css la feuille de style
│ └── auld_lang_syne… les mêmes fichiers pour le second texte
├── travail\ vide
├── td_1a_formats.pdf la feuille du TD
└── README.md
depart\ contient les fichiers fournis, et ne se modifie
pas. travail\ reçoit les copies et ce que le TD fabrique.
Si une copie est abîmée, on en refait une à partir de
depart\.
Le chemin complet d’un fichier de départ, et celui d’une copie, sont :
C:\Users\eleve\Desktop\info01\cours1\1a_formats\depart\raven.odt
C:\Users\eleve\Desktop\info01\cours1\1a_formats\travail\raven_odt.pdf
La suite du guide écrit les chemins à partir de
1a_formats\.
Vérification : la barre d’adresse de l’explorateur
se termine par cours1\1a_formats (ou « Bureau > info01
> cours1 > 1a_formats »), et depart\ montre
raven.odt avec son extension.
À faire : ouvrir
depart\raven.odtdans LibreOffice Writer ; l’exporter en PDF puis en PNG danstravail\; rouvrir les trois fichiers.À obtenir :
travail\contientraven.pdfetraven.png.
Double-cliquer sur depart\raven.odt : LibreOffice Writer
l’ouvre.
travail\ sous le nom raven.pdf.travail\ sous le nom raven.png. L’export en
image est dans « Exporter », pas dans « Enregistrer sous »..odt.Rouvrir ensuite les trois fichiers, et essayer dans chacun de
sélectionner une ligne du poème, puis de chercher un mot avec
Ctrl + F. Le .png s’ouvre dans
une visionneuse d’images ; ouvert depuis LibreOffice, il s’affiche dans
Draw, comme une image posée sur une page.
À noter : pour chacun des trois fichiers, si le texte est encore du texte (il se sélectionne, se cherche, se modifie).
À faire : faire quatre copies de
depart\raven.odtdanstravail\, sous quatre noms différents ; les ouvrir par double-clic.À obtenir :
travail\contientraven_odt.pdf,raven_odt.jpg,riri.fifi.loulou.odtetraven.loulou.
Dans l’explorateur :
depart\raven.odt, puis Ctrl +
C ;travail\, puis Ctrl +
V ;F2, taper le nouveau nom, puis
Entrée ;Qui connaît déjà le terminal peut faire la même chose au clavier.
Dans l’explorateur, clic droit sur le dossier 1a_formats, «
Ouvrir dans le terminal », puis, dans un terminal cmd :
copy depart\raven.odt travail\raven_odt.pdf
copy depart\raven.odt travail\raven.loulou
Sous macOS et Linux, la commande est
cp depart/raven.odt travail/raven_odt.pdf. Le terminal
n’est pas nécessaire au TD ; le cours 2 lui consacre une partie.
Faire les quatre copies, puis double-cliquer sur chacune :
| Nom de la copie | Ce que le système lance |
|---|---|
raven_odt.pdf |
un lecteur PDF |
raven_odt.jpg |
une visionneuse d’images |
riri.fifi.loulou.odt |
LibreOffice Writer |
raven.loulou |
rien : Windows demande quel logiciel choisir ; choisir LibreOffice Writer |
À noter : pour chaque copie, si elle s’ouvre, et le message affiché quand elle ne s’ouvre pas. La visionneuse d’images en donne un précis.
À faire : ouvrir
depart\raven_brut.htmlpuisdepart\raven_style.htmldans le navigateur ; modifier une couleur dansstyle.css; lire l’adresse de la page ; ouvrir une copie dont le nom contient un espace.À obtenir : la page mise en forme change de couleur après
F5;travail\contientraven style.html.
depart\raven_brut.html. Le
navigateur l’ouvre, sans réseau.depart\raven_style.html : le même
texte, mis en forme.<head> et </head>, puis la façon
dont le poème est écrit.depart\style.css dans le Bloc-notes. Remplacer
la valeur d’une ligne color: par crimson, ou
par un code comme #c0392b, et enregistrer.raven_style.html, et
recharger la page avec F5.style.css est le seul fichier de depart\
que le TD modifie : remettre sa couleur d’origine à la fin de
l’étape.
Lire l’adresse que le navigateur affiche pour
raven_style.html. Elle a la forme :
file:///C:/Users/eleve/Desktop/info01/cours1/1a_formats/depart/raven_style.html
À noter : ce qui ressemble à un chemin de fichier dans cette adresse, et ce qui en diffère. Noter aussi ce qui distingue les deux fichiers HTML dans le Bloc-notes.
depart\raven_style.html dans
travail\, et renommer la copie
raven style.html, avec un espace.Ctrl +
A, Ctrl + C), et la coller dans
le Bloc-notes.À noter : l’apparence de la page, comparée à
depart\raven_style.html ; comment l’espace apparaît dans la
barre d’adresse, puis dans l’adresse collée. Le résultat dépend du
navigateur.
À faire : ouvrir quatre fichiers de
depart\dans le Bloc-notes, puis dans Notepad++ ; retrouver des caractères dans la table ASCII.À obtenir : les quatre fichiers ouverts dans chaque éditeur, puis fermés sans enregistrer.
Un fichier texte range chaque caractère dans un octet, selon une
table. La table ASCII en donne 95, avec leur valeur en hexadécimal : la
ligne donne le premier chiffre, la colonne le second. R est
à la ligne 5_ et dans la colonne 2 : il vaut
52.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2_ | ␣ |
! |
" |
# |
$ |
% |
& |
' |
( |
) |
* |
+ |
, |
- |
. |
/ |
| 3_ | 0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
: |
; |
< |
= |
> |
? |
| 4_ | @ |
A |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O |
| 5_ | P |
Q |
R |
S |
T |
U |
V |
W |
X |
Y |
Z |
[ |
\ |
] |
^ |
_ |
| 6_ | ` |
a |
b |
c |
d |
e |
f |
g |
h |
i |
j |
k |
l |
m |
n |
o |
| 7_ | p |
q |
r |
s |
t |
u |
v |
w |
x |
y |
z |
{ |
| | } |
~ |
␣ représente l’espace. Les valeurs de 00 à
1F ne sont pas des caractères affichables mais des
commandes, dont le saut de ligne, 0A. 7F non
plus.
Retrouver dans la table la valeur de l’espace, puis celle de
A et celle de a.
À noter : l’écart entre la valeur d’une majuscule et celle de la minuscule correspondante.
Ouvrir chacun des quatre fichiers suivants dans le Bloc-notes (clic droit, Ouvrir avec, Bloc-notes), puis dans Notepad++ (clic droit, Ouvrir avec, Notepad++, ou par le menu Fichier de Notepad++) :
Fichier, dans depart\ |
Dans le Bloc-notes | Dans Notepad++ |
|---|---|---|
raven_une_ligne.txt |
||
style.css |
||
raven_brut.html |
||
raven.odt |
Attention : ne rien enregistrer, et fermer sans
sauver. Un .odt réenregistré par un éditeur de texte est
détruit.
À noter : pour chaque fichier et chaque éditeur, si le contenu est lisible, et ce que Notepad++ ajoute à l’affichage.
Cette section se lit après avoir fait les étapes.
| Fichier | Le texte est-il encore du texte ? |
|---|---|
raven.odt |
oui, et il reste modifiable dans LibreOffice |
raven.pdf |
oui : il se sélectionne et se cherche, mais la mise en page est figée |
raven.png |
non : ce sont des pixels, et seule la première page est exportée |
Un PDF décrit la page : les caractères y sont rangés avec leur position. Une image PNG ou JPEG photographie la page : elle ne garde que l’apparence, et le texte n’y est plus que des points de couleur.
| Nom de la copie | Ce qui se passe |
|---|---|
raven_odt.pdf |
refus : le lecteur PDF ne reconnaît pas le fichier |
raven_odt.jpg |
refus : Not a JPEG file: starts with 0x50 0x4b |
riri.fifi.loulou.odt |
s’ouvre : seule la fin du nom, après le dernier point, compte |
raven.loulou |
s’ouvre une fois LibreOffice choisi : le contenu n’a pas changé |
Le système ne regarde que le nom. Avec une extension qu’il connaît, il lance le logiciel associé, qui refuse le fichier s’il n’est pas du format attendu. Avec une extension inconnue, Windows et macOS demandent quel logiciel employer, et retiennent ce choix si on coche « Toujours ». Linux, lui, regarde les premiers octets du fichier et propose LibreOffice de lui-même.
0x50 0x4b sont les deux premiers octets du fichier,
écrits en hexadécimal. Dans la table ASCII, ce sont les caractères
P et K : la signature d’une archive ZIP, dont
un .odt est une forme (TD 1b).
raven_brut.html et raven_style.html
contiennent le même poème. Dans raven_brut.html, il tient
dans un seul paragraphe, <p>, et le navigateur
l’affiche en un bloc : les sauts de ligne du fichier ne sont pas rendus,
la structure d’une page HTML se déclare par des balises.
raven_style.html écrit un paragraphe par vers, et son
en-tête contient une ligne de plus,
<link rel="stylesheet" href="style.css">, qui appelle
la feuille de style. style.css décrit la présentation :
couleurs, polices, largeur. Modifier style.css change
l’apparence de la page sans toucher au texte. Le contenu est dans un
fichier, la présentation dans un autre, et l’un change sans l’autre. CSS
accepte les couleurs par leur nom (crimson) comme par leur
code hexadécimal (#c0392b), deux chiffres par composante,
rouge, vert, bleu.
Une adresse web, ou URL, est un chemin de fichier précédé de la machine où aller le chercher :
| Partie | Dans https://www.ensg.eu/cours/info01/raven.html |
|---|---|
| le protocole, la façon convenue de demander le fichier | https:// |
| la machine | www.ensg.eu |
| le chemin sur cette machine | /cours/info01/ |
| le fichier | raven.html |
L’adresse d’une page ouverte depuis le disque a la même forme, avec
le protocole file. Entre file:// et le chemin,
la place de la machine est vide, puisque c’est la vôtre ; la troisième
barre est le début du chemin, /C:/. Le navigateur écrit
tous les chemins avec des /, même sous Windows.
Une adresse ne peut pas contenir d’espace : il y est écrit
%20, 20 étant la valeur hexadécimale de
l’espace dans la table ASCII. Chrome et Edge affichent
raven%20style.html dans la barre ; Firefox affiche
l’espace, mais l’adresse copiée contient %20 dans tous les
cas. Ce que la barre affiche est une présentation, ce qui se copie est
l’adresse réelle.
La copie raven style.html s’affiche sans mise en forme,
alors que l’original de depart\ en a une.
href="style.css" est un chemin relatif : il désigne
style.css dans le dossier de la page. La copie est dans
travail\, où il n’y a pas de style.css, et le
navigateur ne trouve pas la feuille de style.
Un espace dans un nom de fichier passe dans l’explorateur et dans le navigateur, mais il demande des guillemets en ligne de commande, au cours 3.
La table ASCII donne 20 pour l’espace, 41
pour A et 61 pour a : une
minuscule vaut sa majuscule plus 20.
| Fichier | Dans le Bloc-notes | Dans Notepad++ |
|---|---|---|
raven_une_ligne.txt |
le poème, lisible en entier | le même, sans couleur |
style.css |
des règles, lisibles | sélecteurs et propriétés en couleur |
raven_brut.html |
le texte et ses balises | les balises en couleur, repliables |
raven.odt |
PK, puis des caractères sans suite : du binaire |
les mêmes, et des NUL en surbrillance |
Un éditeur de texte affiche un caractère par octet, selon la table
d’encodage, et n’interprète rien d’autre : ni image, ni mise en forme.
Ce qui n’a pas de caractère correspondant apparaît en carré ou en signe
étrange ; Notepad++ marque NUL les octets de valeur
00.
Les couleurs de Notepad++ ne viennent pas du fichier : l’éditeur les
ajoute d’après l’extension, qu’il associe à un langage. Renommer
style.css en style.txt les fait disparaître.
L’éditeur de code de la partie 2 fait la même chose pour Python.
raven_brut.html est du texte, raven.odt
n’en est pas, et leur nom ne le disait pas : seule l’ouverture dans un
éditeur de texte le montre. Les PK du début sont la
signature ZIP rencontrée à l’étape 3.