FreeToGenerate.com

Un fichier de calendrier note le moment où l’événement est déjà terminé, donc un événement en journées entières se termine le lendemain. Rien n’est envoyé.

Essayez :

Le dernier jour que l’événement occupe réellement. Le fichier notera le lendemain, et le panneau ci-dessous montre les deux valeurs.

Les deux valeurs

Vous avez dit que le dernier jour est
7 août 2026
Le fichier note une fin au
DTEND;VALUE=DATE:20260808

C’est le même événement. La fin que note un fichier de calendrier est le moment où l’événement est déjà terminé, donc un événement en journées entières se termine le lendemain. Écrivez le jour que vous aviez en tête et l’événement sort amputé d’une journée : c’est l’erreur la plus courante ici, et elle n’a l’air d’une erreur dans aucun agenda.

Quand cela a lieu

  1. 5 août 2026
  2. 5 août 2027
  3. 5 août 2028

La première ligne est la date de début elle-même. Ce n’est pas une erreur de comptage, c’est la règle : demander trois fois veut dire le début et deux de plus.

Le fichier

Ligne la plus longue: 43

Voici les octets exacts, pliés là où la spécification le demande. Les lignes longues sont coupées et reprennent avec une espace en tête ; celui qui lit les recolle avant toute autre chose.

Tout se passe dans votre navigateur. Rien de ce que vous saisissez n’est envoyé.

Aussi disponible en : English · Español · Português · العربية

Générateur de fichier ICS : la date de fin est le lendemain

Renseignez un événement, obtenez un fichier .ics valide et voyez les deux valeurs : le dernier jour que vous avez indiqué et la fin que le fichier note.

Qu’est-ce qu’un fichier .ics ?

Un fichier .ics est un événement d’agenda écrit en texte brut. Tous les logiciels d’agenda lisent ce format — Google Agenda, Outlook, Calendrier d’Apple, Thunderbird — parce que c’est une norme publiée et non le format d’une seule entreprise, et c’est pour cela qu’un événement envoyé en pièce jointe s’ouvre partout. À l’intérieur, une liste de lignes : un titre, un début, une fin, éventuellement une règle de répétition, chacune écrite sous la forme d’un nom, deux-points, une valeur.

C’est aussi un format qui contient un piège célèbre, et ce générateur est conçu pour vous le montrer plutôt que pour le corriger discrètement à votre place. La fin notée dans un fichier de calendrier n’est pas le dernier moment de l’événement, mais le premier moment qui le suit : ce que la norme appelle une fin non inclusive. Pour une réunion horaire, personne ne le remarque : ce qui se termine à 10:00 est fini à 10:00, et c’est exactement ce qu’on attend. Pour un événement en journées entières, cela mord, car un festival qui va du mercredi au vendredi doit être écrit comme se terminant le samedi.

La spécification développe elle-même l’exemple, et les chiffres valent d’être retenus : un événement allant du 28 juin au 8 juillet 2007 inclus s’écrit avec une fin au 9 juillet. Si vous vous trompez, le fichier est amputé d’une journée. Aucun avertissement, aucun agenda ne le refuse, et l’événement apparaît simplement sans son dernier jour.

Comment l’utiliser

  1. Décrivez l’événement. Un titre et, si vous voulez, un lieu et une description. Choisissez des journées entières ou un horaire précis ; si vous prenez un horaire, décidez comment il doit être noté : heure locale sans ancrage, instant absolu, ou heure d’horloge dans un fuseau nommé que l’outil convertit pour vous.
  2. Indiquez le dernier jour de l’événement. Le champ demande le dernier jour que l’événement occupe réellement, parce que c’est cela qu’une personne connaît. Le panneau en dessous affiche cette date à côté de la fin que le fichier note, qui est le lendemain. Les deux valeurs sont à l’écran en même temps : la conversion se voit au lieu de devoir être crue sur parole.
  3. Copiez les octets ou téléchargez le fichier. La sortie est montrée telle qu’elle s’écrit, y compris là où les lignes longues sont coupées et reprises. On peut aussi faire le chemin inverse : passez en mode lecture, collez un fichier, et il vous dira ce que signifie chaque date et quel est réellement le dernier jour.

Deux bornes, et elles ne s’accordent pas

Le même format borne deux choses et emploie des conventions opposées pour chacune. La fin d’un événement est exclusive, comme on vient de le voir. La date de fin d’une règle de répétition, elle, est inclusive : la norme dit qu’elle borne la récurrence de manière inclusive, donc une réunion hebdomadaire qui se termine le 2 septembre a bien lieu le 2 septembre. Mettez les deux sur le même événement et vous écrivez une date qui veut dire jusqu’à et une autre qui veut dire jusqu’à la fin de, à quelques lignes d’écart, sans rien dans la syntaxe pour les distinguer.

Une répétition comptée en nombre a en outre sa propre règle discrète : le début compte comme la première occurrence. Demander trois fois, c’est le début et deux de plus, pas le début et trois de plus. C’est pourquoi cet outil énumère les dates au lieu de vous l’expliquer : la première ligne est la date de début, et une fois que vous l’avez vue, vous ne relirez plus jamais un compteur de travers.

Rien de tout cela n’est un défaut du logiciel de qui que ce soit. Les bibliothèques qui construisent ces fichiers prennent la fin qu’on leur donne et l’écrivent, ce qui est exactement leur rôle. L’erreur se produit un cran plus haut, dans l’écart entre ce qu’une personne veut dire par se termine vendredi et ce que le format note, et aucune bibliothèque ne peut combler cet écart puisqu’elle ne voit jamais ce que vous vouliez dire.

Pourquoi il n’y a pas de nom de fuseau dans le fichier

Si vous saisissez une heure dans un fuseau nommé, cet outil calcule l’instant correspondant et note cet instant. Il n’écrit pas le nom du fuseau dans le fichier, et la raison mérite d’être dite clairement : le format autorise bien une date à désigner un fuseau par son nom, mais seulement si le fichier emporte aussi la définition complète de ce fuseau, chaque règle d’heure d’été écrite dans son propre bloc. Un nom sans définition n’est pas un raccourci : c’est un fichier dont le sens dépend d’un logiciel que vous ne pouvez pas inspecter.

Noter l’instant est exact, ne demande rien d’autre, et n’importe quel agenda l’affichera dans le fuseau de celui qui l’ouvre. Cela a un coût honnête, rendu inévitable par la conception même de la norme : une réunion périodique fixée à un instant ne suit pas un fuseau à travers un changement d’heure. Un point hebdomadaire à neuf heures à Paris, noté ainsi, se lit huit heures la semaine qui suit le recul des horloges. C’est calculé, pas supposé. Si une réunion périodique doit rester à la même heure locale toute l’année, c’est le cas où une définition de fuseau complète mérite sa place.

Deux détails que l’outil traite plutôt que d’en parler. L’heure d’horloge que vous saisissez peut ne pas exister — au printemps, les horloges l’enjambent — ou survenir deux fois, le jour où elles reculent. Les deux sont signalées quand elles se présentent, avec la lecture retenue, au lieu d’en choisir une en silence.

Ce que l’outil ne vous dira pas

Il ne vérifie pas que votre événement a du sens. Une réunion qui se termine avant de commencer, un titre vide, une répétition qui court sur un siècle : tout cela produit un fichier parfaitement valide, car valide signifie ici bien formé et non raisonnable. Le mode lecture signale ce qui se décide à partir du texte seul, et s’arrête là.

Il écrit un seul événement. Un fichier de calendrier peut en contenir beaucoup, avec des alarmes, des participants, des plages de disponibilité et des documents joints, et ce générateur ne couvre rien de tout cela. Il écrit aussi un horodatage fixe plutôt que l’instant courant, puisque ce champ note quand la description a été produite et n’a aucun rapport avec la date de l’événement.

Les lignes longues sont coupées et reprises parce que la norme demande des lignes d’au plus 75 octets. Des octets, pas des caractères : c’est pourquoi un titre en anglais peut être presque deux fois plus long qu’un titre en français ou en arabe avant de devoir être coupé, et pourquoi un outil qui compte les caractères dépasse la limite sur n’importe quel texte accentué sans que rien n’ait l’air anormal. Le compteur sous la sortie mesure des octets : vous pouvez le surveiller.

Pourquoi est-ce gratuit ?

Construire un fichier de calendrier, c’est assembler du texte. Cela s’exécute dans votre navigateur : aucun serveur n’intervient, il n’y a rien à facturer ni de compte à créer.

Rien n’est envoyé. Ce que vous saisissez, et tout fichier que vous collez pour le lire, reste dans cet onglet.