Convert STDF To CSV and Other Formats
STDF Converter is an extremely flexible batch STDF converter. It can read one or more STDF files and generate CSV, Excel xlsx or JMP JSL data from the files. The output file can contain parametric, bin summary or test summary (pass-fail by test) data from the files. CSV files can be loaded into Excel and almost every other data analysis tool and database, so STDF Converter lets you get your data into whatever tool you are comfortable using.
STDF QuickChange is published as a gzipped tar file so that it can easily be installed on Linux servers or any personal computer. In the following instructions, the name of the downloaded file will vary slightly, depending on the actual version to be installed.
- Make sure you have Java 1.8 or newer installed and in your execution path. You can download the Java runtime here.
- Download the STDF QuickChange gzipped tar file. Then, on Linux or Mac OS X run gunzip and tar -xf on the downloaded file. On Widows, use 7-zip or an equivalent to extract the files into the directory you choose. For ease of use, we recommend adding the directory into which you untarred the files to your path. We can provide you instructions on adding the directory to your path if you need them.
- Once you have installed the files, you can either build complete calls yourself using the commands described below for maximum flexibility or use the provided examples. For command line transformation of STDF files into other formats, the provided examples are converter.bash and converter.bat, depending on whether you are on Linux/Mac OS X or Microsoft Windows.
Often you can use the supplied data conversion script like this:
converter.bash /tmp/input/test.stdf /tmp/output.csv
This example reads in test.stdf and outputs its parametric data in a csv format.
Complete usage looks like this, with the semicolon(;) characters replaced with colons(:) on Linux and Mac OS X:
java -cp "stdfConverter.jar";"guava-23.0.jar";"commons-cli-1.4.jar";"sqlitejdbc-126.96.36.199.jar";"gson-2.7.jar";commons-math3-3.6.1.jar;po-4.1.2.jar;poi-ooxml-4.1.2.jar;poi-ooxml-schemas-4.1.2.jar;commons-compress-1.19.jar;commons-collections4-4.4.jar;xmlbeans-3.1.0.jar spry.stdf.converter.StdfConverter -parametric -csv -output outfile.csv infile.stdf
-cp "stdfConverter.jar";"guava-23.0.jar";"commons-cli-1.4.jar";"sqlitejdbc-188.8.131.52.jar";"gson-2.7.jar";commons-math3-3.6.1.jar;poi-4.1.2.jar;poi-ooxml-4.1.2.jar;poi-ooxml-schemas-4.1.2.jar;commons-compress-1.19.jar;commons-collections4-4.4.jar;xmlbeans-3.1.0.jarindicates dependencies of the tool. All of these files are included in the install. Replace the ; character with : on Linux or Mac OS X. You should not need to change the rest of this value, unless for some reason you installed different versions of the jar files.
spry.stdf.converter.StdfConverterthis is the name of the executable class inside QuickChange Utilities. You should not need to change this value.
-parametricindicates that the converter should output parametric data to a file
-csvindicates that output files should be in comma separated value format
-outputindicates that the next value is the desired name of the output file
infile.stdfinfile.stdf is the name of the input file. Note that more than one input file can be named, separated by spaces at the end of the options.
- Full list of available options:
- Output format options. If you do not specify one -csv is the default
- -csv output data in CSV format
- -jsl output data in JMP JSL format
- -xml output STDF records in XML
- -json output STDF records in JSON
- -xlsx output STDF records in Excel xlsx format
- Included data type options. One output file will be generated per input file for each data type. There are two groups of output data types, lists of raw STDF records of particular types and summaries we have defined.
- Lists of all records of particular STDF record types include any of the following:
-atr, -bps, -dtr, -eps, -far, -ftr, -gdr, -hbr, -mir, -mpr, -mrr, -pcr, -pgr, -pir, -plr
-pmr, -prr, -psr, -ptr, -rdr, -sbr, -sdr, -wcr, -wir, -wrr
- -parametric output parametric data. This option is on by default if no output data type is specified
- -includepf include pass-fail column for each test in parametric results reports
- -hardbin output hardware bin summary data
- -softbin output software bin summary data
- -multi_parametric output data from MPR (multiple parametric result) records
- -test_descriptions output descriptions of tests, including name, number, limits, scaling
- -test_summary output statistical summary of tests, including limits
- -multi_by_test includes parametric and multi_parametric rows with one row per test and one column per device
- -file_summary includes a file summary, including descriptive fields such as lot and start date, bin summaries and test fail summaries
- Lists of all records of particular STDF record types include any of the following:
- Input and output organization. By default StdfConverter expects that last argument after all options to be the name of the input file and to build the output file name(s) from that input file. These options alter that behavior.
- -inputdir to read all input files from given directory, optionally recursively with -recursive option
- -output output results to the designated file instead of a name derived from the input file name and output file contents. Do not use this option with multiple output data types
- -outputdir output results to files in directory, with name derived from input file name and data type
- -recursive read input files from subdirectories of inputdir
- -split splits output into a number of files having no more than the given # of columns per file. Put the value ### in the output file name to indicate where the file number should go, if not at the end
- -timestampoutput indicates that output file names should include a timestamp derived from input data
- -logfile logfilename indicates that an output log called logfilename should be created with one line per file processed, indicating when processing finished and whether it passed or failed
- See the FAQ for the meaning of exit codes from the STDF converter call
Instead of parametric data as in the example, write all software bin data for input files. In this example, an csv output file is created for each stdf in the provided input folder:
java -Xmx784m -cp "%mypath%stdfConverter.jar";"%mypath%stax-api-1.0.1.jar";"%mypath%dom4j-1.6.1.jar";"%mypath%xmlbeans-2.3.0.jar";"%mypath%poi-ooxml-schemas-3.10-FINAL-20140208.jar";"%mypath%poi-ooxml-3.10-FINAL-20140208.jar";"%mypath%poi-3.10-FINAL-20140208.jar";"%mypath%guava-16.0.jar";"%mypath%commons-cli-1.2.jar";"%mypath%sqlitejdbc-v056.jar";"%mypath%gson-2.7.jar";%mypath%commons-math3-3.6.1.jar spry.stdf.converter.StdfConverter -sbr --csv -outputdir %2 -inputdir %1
called like this
converter.bat c:\stdf_dir c:\csv_output_dir
To write the software bins for all stdf files in the provided directory (and its subdirectories) into one output file, the script would look like this:
java -Xmx784m -cp "%mypath%stdfConverter.jar";"%mypath%stax-api-1.0.1.jar";"%mypath%dom4j-1.6.1.jar";"%mypath%xmlbeans-2.3.0.jar";"%mypath%poi-ooxml-schemas-3.10-FINAL-20140208.jar";"%mypath%poi-ooxml-3.10-FINAL-20140208.jar";"%mypath%poi-3.10-FINAL-20140208.jar";"%mypath%guava-16.0.jar";"%mypath%commons-cli-1.2.jar";"%mypath%sqlitejdbc-v056.jar";"%mypath%gson-2.7.jar";%mypath%commons-math3-3.6.1.jar spry.stdf.converter.StdfConverter -sbr --csv -output %2 -inputdir %1
and it would be called like this:
converter.bat c:\stdf_dir c:\csv_output\my_outout_file.csv
Need Some Help Getting Started?
We know each batch process has unique setup problems, a unique runtime environment and unique output requirements, so we are happy to provide free support to help you try out and deploy STDF QuickChange. Just contact us and we will help you get up and running with STDF Converter.
Interested? Try STDF Converter and the rest of STDF QuickChange for 15 days and see how it helps you analyze your data.
Ready to Buy?
Selecting Buy Now allows you to purchase one or more STDF QuickChange licenses via credit card or PayPal for USD 415 each. If you are interested in purchasing licenses but prefer to use a credit card without paying online, a purchase order or another payment mechanism, let us know by mailing firstname.lastname@example.org or clicking the Contact Us link. We are happy to accommodate any of those mechanisms. You can also contact us about volume license discounts.
For more information, please Contact Us.