As long as the contents of the file has time-value pairs separated by comma or spaces, with or without newline (be it Linux/Unix, Mac, or Windows), it doesn't matter what extension it has. The pairs may or may not be enclosed within parenthesis. The time values must be incremental.
Examples of valid files:
1 2, 3
4, 5 6
1 2 3 ,4 5 , 6 ...
(1 2) (3, 4),(+0.1 -20) ...
All these will work. The spaces and commas are mostly as delimiters, their position doesn't seem to matter much (there may be exceptions, some caution applies). Don't forget that if there are sharp edges, instead of writing (e.g.)
12m 3 12.000001m 4 it's easier to use the relative increment
12m 3 +1n 4. The minus (
-) is also available, but only for the values. As far as I know, there is no limit to the file size except your memory (I've worked with tens of thousands of pairs, it was relatively slow, but it worked). Also, it's not limited to
FREQ() triplets are also welcome.
table() can also be used, but a different approach is needed. By itself, it has no option to load external data, but it can be used as a SPICE netlist:
B1 out 0 v=table( ; or VCVS, VCCS, etc
+ <data-data pairs> ; '+' is needed to concatenate the lines
This can be placed in a new file, then included in the schematic with
.inc /path/to/some.file, or the extra lines can be appended to the already existent file with data. The advantage is that
table() is not restricted to strictly increasing increments for the first elements in the data pairs. The disadvantage is the more cumbersome way of loading it.
table(), too, has only linear interpolation.