If you want to read custom user data, let's say to read a couple of check point for your time loop from file, here is some recipes of how to achieve that with simple helpers available in DuMux.
If you have a simple text file containing a list of numbers
 You can read these numbers into a std::vector<double> like this 
 The file extension is arbitrary. The container type std::vector<> needs to support begin(), end(), and push_back(). It has to have an alias value_type (the type of the element, here double) and this type needs to have an overloaded operator>> to be constructible from an input stream. With similar code you can also multi-column data like this 
 for example into a std::vector<Dune::FieldVector<float, 3>> 
You can read config data (key-value data) using the Dune::ParameterTreeParser. This is the same type of file we use for DuMux input files. Given a config file like this 
 the data can be read into a Dune::ParameterTree like this 
Again, the file extension is arbitrary. You can retrieve data by casting it into another type like this
XML (Extensible Markup Language) is a very flexible structured data format. You can read and write XML files using the TinyXML-2 library contained in DuMux. For example, given an XML file like this
You can initialise the file reader like this
and read fields like this