{"id":193,"date":"2013-04-21T19:03:35","date_gmt":"2013-04-21T19:03:35","guid":{"rendered":"http:\/\/www.wcido.com\/wordpress\/?p=193"},"modified":"2016-04-20T20:04:09","modified_gmt":"2016-04-20T20:04:09","slug":"decouper-avec-html5-un-fichier-texte","status":"publish","type":"post","link":"https:\/\/www.ybierling.com\/v2\/fr\/decouper-avec-html5-un-fichier-texte\/","title":{"rendered":"D\u00e9couper avec HTML5 un fichier texte"},"content":{"rendered":"<div class=\"blogresume\">\n<div class=\"blog_text\">\n<p>Il peut arriver de se retrouver avec <a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-1-filetosplit.png\" target=\"_blank\">un fichier (Fig 1)<\/a> trop gros, que l&#8217;on souhaite d\u00e9couper en fichiers plus petits. Par exemple, un fichier de donn\u00e9es que l&#8217;on souhaite uploader dans SAP, mais qui est trop gros dans son \u00e9tat actuel.<\/p>\n<div class=\"centered\" style=\"text-align: center;\">\n<blockquote>\n<figure><a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-1-filetosplit.png\" target=\"_blank\"><img decoding=\"async\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/1-filetosplit.png\" alt=\"Fichier \u00e0 d\u00e9couper\" width=\"160\" height=\"120\" \/><\/a><figcaption>Fig 1 : Fichier \u00e0 d\u00e9couper<\/figcaption><\/figure>\n<\/blockquote>\n<\/div>\n<p>Afin de pouvoir envoyer les donn\u00e9es en plusieurs fois, je vous propose <a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-2-textfilesplitter.png\" target=\"_blank\">un outil en HTML5 (Fig 2)<\/a>[1], avec ex\u00e9cution locale (sur votre ordinateur) uniquement, qui d\u00e9coupera pour vous votre fichier texte.<\/p>\n<div class=\"centered\" style=\"text-align: center;\">\n<blockquote>\n<figure><a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-2-textfilesplitter.png\" target=\"_blank\"><img decoding=\"async\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/2-textfilesplitter.png\" alt=\"Application de d\u00e9coupe de fichier, par Yoann Bierling\" width=\"160\" height=\"120\" \/><\/a><figcaption>Fig 2 : Application de d\u00e9coupe de fichier, par Yoann Bierling<\/figcaption><\/figure>\n<\/blockquote>\n<\/div>\n<p>Munissez-vous de <a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-1-filetosplit.png\" target=\"_blank\">votre fichier texte (Fig 1)<\/a>, sp\u00e9cifiez le nombre de lignes d&#8217;en-t\u00eate \u00e0 d\u00e9couper au d\u00e9but du fichier et \u00e0 r\u00e9p\u00e9ter sur chaque partie &#8211; ou sp\u00e9cifiez 0 si votre fichier ne poss\u00e8de pas de lignes d&#8217;en-t\u00eate &#8211; ainsi que le nombre de lignes \u00e0 obtenir dans chaque partie.<\/p>\n<p>Choisissez ensuite la mani\u00e8re la plus pratique pour vous d&#8217;envoyer le fichier, en le s\u00e9lectionnant sur votre ordinateur, ou bien en effectuant un glisser-d\u00e9placer dans la zone pr\u00e9vue \u00e0 cette effet.<\/p>\n<p>Le traitement du fichier peut se r\u00e9v\u00e9ler long suivant la taille de votre fichier source et la puissance de votre ordinateur.<\/p>\n<p>Vous pourrez ensuite r\u00e9cup\u00e9rer dans <a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-3-textfilesplitted.png\" target=\"_blank\">la partie inf\u00e9rieure de la page de r\u00e9sultats (Fig 3)<\/a> les diff\u00e9rentes parties du fichier d\u00e9coup\u00e9. Cliquez droit sur chaque partie et s\u00e9lectionnez &#8220;Enregistrer la cible du lien sous&#8230;&#8221;.<\/p>\n<div class=\"centered\" style=\"text-align: center;\">\n<blockquote>\n<figure><a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-3-textfilesplitted.png\" target=\"_blank\"><img decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/3-textfilesplitted.png\" alt=\"R\u00e9sultat d'une d\u00e9coupe de fichier, par Yoann Bierling\" width=\"160\" height=\"120\" \/><\/a><figcaption>Fig 3 : R\u00e9sultat d&#8217;une d\u00e9coupe de fichier, par Yoann Bierling<\/figcaption><\/figure>\n<\/blockquote>\n<\/div>\n<p>Attention, l&#8217;application[1] \u00e9tant r\u00e9alis\u00e9e en HTML5, elle peut <a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-4-APInotsupported.png\" target=\"_blank\">ne pas fonctionner si vous utilisez un navigateur ancien (Fig 4)<\/a> ne prenant pas en compte les normes actuelles du web. N&#8217;h\u00e9sitez pas \u00e0 vous procurer Mozilla Firefox[2] ou Google Chrome[3] par exemple.<\/p>\n<div class=\"centered\" style=\"text-align: center;\">\n<blockquote>\n<figure><a href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-4-APInotsupported.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/4-APInotsupported.png\" alt=\"Message d'erreur API non support\u00e9e\" width=\"160\" height=\"120\" \/><\/a><figcaption>Fig 4 : Message d&#8217;erreur API non support\u00e9e<\/figcaption><\/figure>\n<\/blockquote>\n<\/div>\n<p>Techniquement, les fichiers sont lus en local[4], en utilisant l&#8217;API File[5], puis trait\u00e9s gr\u00e2ce \u00e0 FileSystem[6]. Un lien de t\u00e9l\u00e9chargement[7] est propos\u00e9. Les fichiers sont g\u00e9n\u00e9r\u00e9s localement entre temps[8], les liens de t\u00e9l\u00e9chargement \u00e9tant propos\u00e9s avec des modifications DOM[9]. L&#8217;interface est un simple formulaire mis en forme avec CSS3[10].<\/p>\n<\/div>\n<\/div>\n<div class=\"blogresdetails\">\n<blockquote>\n<h1 style=\"text-align: center;\">Hyperlien<\/h1>\n<div class=\"centered\" style=\"text-align: center;\"><a title=\"D\u00e9coupeur de fichier texte en HTML5 - Yoann Bierling, Consultant International\" href=\"http:\/\/www.ybierling.com\/fr\/textfilesplit\"><img decoding=\"async\" src=\"http:\/\/www.ybierling.com\/images\/128x128\/link.png\" alt=\"D\u00e9coupeur de fichier texte en HTML5 - Yoann Bierling, Consultant International\" \/><br \/>\nD\u00e9coupeur de fichier texte en HTML5 &#8211; Yoann Bierling, Consultant International<\/a><\/div>\n<\/blockquote>\n<h1>Liens et cr\u00e9dits<\/h1>\n<ul class=\"description_list\">\n<li>[1] &#8211; D\u00e9coupeur de fichier texte en HTML5 &#8211; Yoann Bierling, Consultant International &#8211; <a title=\"D\u00e9coupeur de fichier texte en HTML5 - Yoann Bierling, Consultant International\" href=\"http:\/\/www.ybierling.com\/fr\/textfilesplit\" target=\"_blank\">textfilesplit<\/a><\/li>\n<li>[2] &#8211; T\u00e9l\u00e9charger et installer le navigateur web Mozilla Firefox &#8211; <a title=\"T\u00e9l\u00e9charger et installer le navigateur web Mozilla Firefox\" href=\"http:\/\/getfirefox.com\" target=\"_blank\">http:\/\/getfirefox.com<\/a><\/li>\n<li>[3] &#8211; T\u00e9l\u00e9charger et installer le navigateur web Google Chrome &#8211; <a title=\"T\u00e9l\u00e9charger et installer le navigateur web Google Chrome\" href=\"http:\/\/www.google.com\/chrome\" target=\"_blank\">http:\/\/www.google.com\/chrome<\/a><\/li>\n<li>[4] &#8211; Reading local files in Javascript &#8211; HTML5 Rocks &#8211; <a title=\"Reading local files in Javascript - HTML5 Rocks\" href=\"http:\/\/www.html5rocks.com\/en\/tutorials\/file\/dndfiles\/\" target=\"_blank\">http:\/\/www.html5rocks.com<\/a><\/li>\n<li>[6] &#8211; Exploring the FileSystem APIs &#8211; HTML5 Rocks &#8211; <a title=\"Exploring the FileSystem APIs - HTML5 Rocks\" href=\"http:\/\/www.html5rocks.com\/en\/tutorials\/file\/filesystem\/\" target=\"_blank\">http:\/\/www.html5rocks.com<\/a><\/li>\n<li>[7] &#8211; Downloading resources in HTML5: a[download] &#8211; HTML5Rocks Updates &#8211; <a title=\"Downloading resources in HTML5: a[download] - HTML5Rocks Updates\" href=\"http:\/\/updates.html5rocks.com\/2011\/08\/Downloading-resources-in-HTML5-a-download\" target=\"_blank\">http:\/\/updates.html5rocks.com<\/a><\/li>\n<li>[8] &#8211; Using HTML5\/Javascript to generate and save a file &#8211; Stack Overflow &#8211; <a title=\"Using HTML5\/Javascript to generate and save a file - Stack Overflow\" href=\"http:\/\/stackoverflow.com\/questions\/2897619\/using-html5-javascript-to-generate-and-save-a-file\" target=\"_blank\">http:\/\/stackoverflow.com<\/a><\/li>\n<li>[9] &#8211; FileReader &#8211; Document Object Mode (DOM) | MDN &#8211; <a title=\"FileReader - Document Object Mode (DOM) | MDN\" href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/DOM\/FileReader\" target=\"_blank\">https:\/\/developer.mozilla.org<\/a><\/li>\n<li>[10] &#8211; Clean and Stylish CSS3 Form | Gazpo.com &#8211; <a title=\"Clean and Stylish CSS3 Form | Gazpo.com\" href=\"http:\/\/gazpo.com\/2011\/02\/form\/\" target=\"_blank\">http:\/\/gazpo.com<\/a><\/li>\n<\/ul>\n<h1>Images<\/h1>\n<ul class=\"description_list\">\n<li><a title=\"Fichier \u00e0 d\u00e9couper\" href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-1-filetosplit.png\" target=\"_blank\">Fig1 : Fichier \u00e0 d\u00e9couper <img decoding=\"async\" class=\"blog_thumb\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/thumb\/1-filetosplit.png\" alt=\"Fichier \u00e0 d\u00e9couper\" \/><\/a><\/li>\n<li><a title=\"Application de d\u00e9coupe de fichier, par Yoann Bierling\" href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-2-textfilesplitter.png\" target=\"_blank\">Fig2 : Application de d\u00e9coupe de fichier, par Yoann Bierling <img decoding=\"async\" class=\"blog_thumb\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/thumb\/2-textfilesplitter.png\" alt=\"Application de d\u00e9coupe de fichier, par Yoann Bierling\" \/><\/a><\/li>\n<li><a title=\"R\u00e9sultat d'une d\u00e9coupe de fichier, par Yoann Bierling\" href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-3-textfilesplitted.png\" target=\"_blank\">Fig3 : R\u00e9sultat d&#8217;une d\u00e9coupe de fichier, par Yoann Bierling <img decoding=\"async\" class=\"blog_thumb\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/thumb\/3-textfilesplitted.png\" alt=\"R\u00e9sultat d'une d\u00e9coupe de fichier, par Yoann Bierling\" \/><\/a><\/li>\n<li><a title=\"Message d'erreur API non support\u00e9e\" href=\"http:\/\/www.ybierling.com\/fr\/picture-20130421-4-APInotsupported.png\" target=\"_blank\">Fig4 : Message d&#8217;erreur API non support\u00e9e <img decoding=\"async\" class=\"blog_thumb\" src=\"http:\/\/www.ybierling.com\/images\/articles\/20130421\/thumb\/4-APInotsupported.png\" alt=\"Message d'erreur API non support\u00e9e\" \/><\/a><\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Il peut arriver de se retrouver avec un fichier (Fig 1) trop gros, que l&#8217;on souhaite d\u00e9couper en fichiers plus<\/p>\n","protected":false},"author":1,"featured_media":188,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[588],"tags":[452,448,39,454,450],"class_list":["post-193","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-web-fr","tag-css3-fr","tag-decouper","tag-fr","tag-html5-fr","tag-texte"],"_links":{"self":[{"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/posts\/193","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/comments?post=193"}],"version-history":[{"count":3,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/posts\/193\/revisions"}],"predecessor-version":[{"id":224,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/posts\/193\/revisions\/224"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/media\/188"}],"wp:attachment":[{"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/media?parent=193"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/categories?post=193"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ybierling.com\/v2\/wp-json\/wp\/v2\/tags?post=193"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}