As the other guys already said, strings in Elixir are binaries, and strings in Erlang are character lists.
But if you need to call an Erlang function that expects an Erlang string, do this (in Elixir):
elixir_string = "z.zip"
erlang_string = String.to_char_list(elixir_string)
e.g.
$ erl
Eshell V8.0 (abort with ^G)
1> zip:zip("z.zip", ["Readme.txt", "AtomSetup.exe"]).
{ok,"z.zip"}
2> zip:list_dir("z.zip").
{ok,[{zip_comment,[]},
{zip_file,"Readme.txt",
{file_info,916,regular,read_write,
{{2016,5,30},{8,28,23}},
{{2016,5,30},{8,28,23}},
{{2016,5,30},{8,28,23}},
54,1,0,0,0,0,0},
[],0,492},
{zip_file,"AtomSetup.exe",
{file_info,88936200,regular,read_write,
{{2016,8,22},{10,29,26}},
{{2016,8,22},{10,29,26}},
{{2016,8,22},{10,29,26}},
54,1,0,0,0,0,0},
[],532,88873181}]}
3>
brian@Brian-PC MINGW64 /m/Users/epail/Downloads
$ unzip -l z.zip
Archive: z.zip
Length Date Time Name
--------- ---------- ----- ----
916 2016-05-30 08:28 Readme.txt
88936200 2016-08-22 10:29 AtomSetup.exe
--------- -------
88937116 2 files
brian@Brian-PC MINGW64 /m/Users/epail/Downloads
$ iex
Eshell V8.0 (abort with ^G)
Interactive Elixir (1.3.2) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> :zip.list_dir(String.to_char_list("z.zip"))
{:ok,
[{:zip_comment, []},
{:zip_file, 'Readme.txt',
{:file_info, 916, :regular, :read_write, {{2016, 5, 30}, {8, 28, 23}},
{{2016, 5, 30}, {8, 28, 23}}, {{2016, 5, 30}, {8, 28, 23}}, 54, 1, 0, 0, 0,
0, 0}, [], 0, 492},
{:zip_file, 'AtomSetup.exe',
{:file_info, 88936200, :regular, :read_write, {{2016, 8, 22}, {10, 29, 26}},
{{2016, 8, 22}, {10, 29, 26}}, {{2016, 8, 22}, {10, 29, 26}}, 54, 1, 0, 0,
0, 0, 0}, [], 532, 88873181}]}
iex(2)>