Outputting the name of all entries to console:
var archive = new VpkArchive();
archive.Load(@"vpk_file_path.vpk");
foreach(var directory in archive.Directories)
foreach (var entry in directory.Entries)
Console.WriteLine(entry.ToString());
Console.WriteLine("Done");
Console.ReadLine();
which will return something similar to
Writing all files to a directory:
var archive = new VpkArchive();
archive.Load(@"vpk_file_path.vpk");
foreach(var directory in archive.Directories)
foreach (var entry in directory.Entries)
File.WriteAllBytes(@"C:\Output\" + entry.Filename + "." + entry.Extension,
entry.Data);
Console.WriteLine("Done");
Console.ReadLine();