View Raw SPL
/* show first few lines of translated ASCII Table */
#include
extern _rtpvnuml;
#define NUMRTLINES 50
_prert(fname, nrows, offset, startcol, hex, collist, delim, skip_delim, numcols, nanstr, infstr, commadec, wspstr)
{
local s, dl, rtnaninfstr, wp;
if (strlen(fname) > 0)
{
/* add -1 to collist if necessary */
if (strlen(strfind("-1", collist)) == 0)
{
collist = strcat(collist, ",-1");
}
/* check if double quote a delimiter */
if (strlen(strfind('"', delim)) > 0)
{
dl = sprintf("'%s'", delim);
}
else
{
dl = sprintf('"%s"', _readt_delimiters);
}
rtnaninfstr = sprintf('"%s", "%s"', nanstr, infstr);
if (commadec)
{
rtnaninfstr = sprintf('%s, ","', rtnaninfstr);
}
else
{
rtnaninfstr = sprintf('%s, ""', rtnaninfstr);
}
/* check if double quote a delimiter */
if (strlen(strfind('"', wspstr)) > 0)
{
wp = sprintf("'%s'", wspstr);
}
else
{
wp = sprintf('"%s"', wspstr);
}
defvar("_rtpvnuml", NUMRTLINES);
if (nrows < 0)
{
nrows = _rtpvnuml;
}
else
{
nrows = min(nrows, _rtpvnuml);
}
/* read RTNUMLINES worth */
s = (sprintf("readt('%s', %d, %d, %s, %d, %d, %s, %s, %s, %s, %d)", fname, offset, startcol, collist, nrows, hex, dl, rtnaninfstr, wp, skip_delim, numcols));
beginwait();
s = eval(s);
endwait();
if (length(s) > 0)
{
/* display */
disp(s, _previewstr);
}
}
}
_prert_error(errnum, errmes)
{
endwait();
message(errmes);
}