Skip to content

Instantly share code, notes, and snippets.

@Nico-Duduf
Created March 25, 2020 14:50
Show Gist options
  • Save Nico-Duduf/082ea0a721f1c54b8bc8faa742e15b0b to your computer and use it in GitHub Desktop.
Save Nico-Duduf/082ea0a721f1c54b8bc8faa742e15b0b to your computer and use it in GitHub Desktop.
//le fichier à convertir
var file = new File("path/to/file.png");
//on prévient Ae que c'est du binaire
file.encoding = 'BINARY'
// continedra le fichier convertit en chaine
var content = ''
//on ouvre et on lit
if (file.open("r"))
{
content = file.read().toSource(); // c'est le toSource qui convertit réellement le truc en chaine de caractères
content = content.substr(content.indexOf("\"")+1, content.length); // un peu de ménage
content = content.substr(0, content.lastIndexOf("\"")); // encore un peu de ménage
binaryFile.close(); //on peut fermer on a ce dont on a besoin
}
//Et là, tu fais ce que tu veux de content, qui est une chaine de caractères. Le plus simple est de l'écrire dans un autre fichier;
var outFile = new File("path/to/file.jsxinc");
//on ouvre et on écrit
if (file.open("w"))
{
// je mets tout de suite dans une variable, c'est plus pratique pour la suite
// puis un retour à la ligne et le nom de la variable elle même peut être utile pour la récup dans un "eval" en cas de besoin.
file.write("var theFileContent = \"" + content + "\";\ntheFileContent;");
file.close();
}
// Maintenant tu as ton jsxinc qui contient l'équivalent du png d'origine, mais en texte.
// Tu peux soit le copier coller quelque part dans ton code, soit l'inclure avec un #include
// (c'est pour ca que je le mets direct dans une variable)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment