Skip to content

lucasepe/file2go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

file2go

┌─┐┬ ┬  ┌─┐   ┌─┐┌─┐
├┤ │ │  ├┤    │ ┬│ │
└  ┴ ┴─┘└─┘ 2 └─┘└─┘
https://github.com/lucasepe/file2go

Convert any file to Go source.

SYNOPSIS:

  file2go [string] [string]

DESCRIPTION:

The file2go utility reads a file from stdin and writes it to stdout,
converting each byte to its hex representation on the fly.

  * if the first [string] is present, it is printed before the data
  * if the second [string] is present, it is printed after the data

This program is used to embed binary or other files into Go source
files, for instance as a []byte.

EXAMPLES:

  date | file2go 'var myDate = []byte {' '}'

will produce:

  var myDate = []byte {
      0x46, 0x72, 0x69, 0x20, 0x4d, 0x61, 0x79, 0x20, 0x33, 0x31,
      0x20, 0x31, 0x37, 0x3a, 0x31, 0x38, 0x3a, 0x34, 0x38, 0x20,
      0x43, 0x45, 0x53, 0x54, 0x20, 0x32, 0x30, 0x32, 0x34, 0x0a
  }





I know very well about the go package embed, but I wanted something 'old school'.

If your workflow involves embedding multiple files, regenerating frequently your embedded data, then you definitely have to choose the embed package.