I am using a finite element program that outputs data in .txt files. And I want to input these data in my LaTeX code. Is there a way to input the data files so that they appear as the program output format?

Program output data file: enter image description here

LaTeX code:



LaTeX output:

enter image description here

  • 11
    Does \verbatiminput{Data/shearwall_only_bc_A.txt} do what you need? Requires \usepackage{verbatim}.
    – egreg
    Dec 2 '12 at 13:16
  • 1
    Maybe, can be also helpful the listings package...
    – Aurelius
    Dec 2 '12 at 13:34
  • @egreg That seems to remove all indents from the text file.
    – 6005
    Feb 13 '15 at 23:51

In addition to listings, the fancyvrb package is equally suitable for this purpose.

This package provides the \VerbatimInput command (similar to \verbatiminput), which can be customised using various parameters (e.g., reducing font size).




% redefine \VerbatimInput
 frame=lines,  % top and bottom rule only
 framesep=2em, % separation between frame and text
 commandchars=\|\(\), % escape character and argument delimiters for
                      % commands within the verbatim
 commentchar=*        % comment character




enter image description here


  • specifying | and (/) as the escape character and argument delimiters means these symbols cannot appear as part of the verbatim text (or in this case, the contents of data.txt);
  • the line of asterisks in data.txt was removed by specifying * as the comment character (similar to % in LaTeX);
  • the line highlighted in green was obtained by modifying it as follows:

(|color(Green) 8 400.519E-33 -12. 17.1429 27.3494E+03)

  • To overwrite the value of previous parameters at any point, use the optional argument of \VerbatimInput, e.g., \VerbatimInput[fontsize=\small]{data.txt}.
    – nnunes
    Dec 2 '12 at 15:39
  • 1
    if filename is variable then how I do that? I want to show the filename from which I load this.
    – alhelal
    Jul 28 '19 at 12:23
  • @alhelal According to @nnunes you can change parameters of the verbatim input later on between the \VerbatimInput and the {<filename>.txt}. Accordingly, you can change the file name that is shown on top with: \VerbatimInput[ label=\fbox{\color{Black}somefilenameorganogram.txt}]{../../code/hw2/Diagrams/organogram.txt}. (where most likely somefilenameorganogram.txt would just be the same as the name of the file your trying to display, i.e. organogram.txt.)
    – a.t.
    Jul 19 '20 at 14:04

Thanks to egreg.



to the preamble, and using

\verbatiminput{<file path>}

to input, does the tick!

  • 2
    And the font size can be controlled by just surrounding \verbatiminput like you normally would: {\small \verbatiminput}. So this works out perfectly fine : ) Jun 20 '18 at 9:07
  • After using \usepackage{verbatim}, I had to use the following capitalization \VerbatimInput{<file path>} to make it work for me.
    – AIpeter
    Aug 14 '19 at 11:51

You can also make the font size smaller in a verbatim environment by making a new environment I call \verbatimprog, which uses the \footnotesize font size.

Place the lines below in the preamble (before \begin{document}):


Then, to use the new environment, say


(your program output here)

  • Yes, but Malthe Eisum's question was about reading the contents of a text file automatically with a command like \input, and not copying the contents of the first.
    – nnunes
    Dec 2 '12 at 18:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.