Here is an approach with LuaLaTeX. In the function readDataFile the content of the file is stored in a Lua table which is printed by using the function printTable. An issue is how to separate the column entries in the external file respectively how to split the string in the Lua function. In this example I used space as separator. So I get the name in two separate arguments which are joined in the LaTeX table (I added a column name in the textfile). I think it should be no problem to modifier the (simple) code to your needs.
\documentclass{book}
\usepackage{longtable}
\usepackage{filecontents}
%create a datafile
\begin{filecontents*}{myfile.txt}
ID Name LastName Age Gender
32432 Angela Cheung 34 F
23245 Katherine Zhang 25 F
254535 Tim Clark 42 M
2523 Richard Davis 44 M
435 Ed Pitt 23 M
\end{filecontents*}
%create a lua script file
\begin{filecontents*}{luaFunctions.lua}
function readDataFile()
local input = io.open('myfile.txt', 'r')
peopleTable = {} --global table for storing the read values
for line in input:lines() do
--split the line with the delimiter
local split = string.explode(line, " ")
--save the arguments in variables
tableItem = {}
tableItem.Id = split[1]
tableItem.FirstName = split[2]
tableItem.LastName = split[3]
tableItem.Age = split[4]
tableItem.Gender = split[5]
--insert the arguments of one line in the table
table.insert(peopleTable, tableItem)
end
input:close()
end
function printTable()
tex.print(string.format("\\begin{longtable}{rlcc}"))
header = peopleTable[1] -- table header is stored in the first row
tex.print(string.format(" {%s} & {%s} & {%s} & {%s}\\\\\\hline"
,header.Id, header.FirstName, header.Age, header.Gender))
tex.print(string.format("\\endhead"))
--create a latex string for every table entry (except the header)
for i,p in ipairs(peopleTable) do
if i~=1 then
tex.print(string.format(" {%s} & {%s} ".." ".." {%s} & {%s} & {%s}\\\\"
,p.Id, p.FirstName, p.LastName, p.Age, p.Gender))
end
end
tex.print(string.format("\\end{longtable}"))
end
\end{filecontents*}
% read the external lua file to declare the defined functions,
% but without execute the Lua commands and functions
\directlua{dofile("luaFunctions.lua")}
% latex commands to execute the lua functions
\def\readDataFile{\directlua{readDataFile()}}
\def\printTable{\directlua{printTable()}}
\begin{document}
\readDataFile
\printTable
\end{document}

VerbatimInputisn't a standard latex command, please edit your post with a full (small)example so we can see what packages you are using, and what the myfile.txt looks like. (TeX tabular environments are delicate things and don't normally accept arbitrary input that is supposed to fill multiple cells. – David Carlisle Jun 7 '12 at 23:21