3
* $Date: 2007-01-04 18:26:00 +0100 (Thu, 04 Jan 2007) $
6
* Copyright (C) 2003-2007 The Chemistry Development Kit (CDK) project
8
* Contact: cdk-devel@lists.sourceforge.net
10
* This program is free software; you can redistribute it and/or
11
* modify it under the terms of the GNU Lesser General Public License
12
* as published by the Free Software Foundation; either version 2.1
13
* of the License, or (at your option) any later version.
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License for more details.
20
* You should have received a copy of the GNU Lesser General Public License
21
* along with this program; if not, write to the Free Software
22
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
24
package org.openscience.cdk.applications;
27
import java.io.FileReader;
29
import org.openscience.cdk.io.IChemObjectReader;
30
import org.openscience.cdk.io.ReaderFactory;
31
import org.openscience.cdk.tools.LoggingTool;
34
* Program that guesses the format of a file.
36
* @cdk.module applications
38
* @cdk.keyword command line util
39
* @cdk.keyword file format
41
public class FileFormatGuesser {
48
* This is a command line application *
49
* Do not convert these System.out/err.println() *
50
* to logger statements
52
public static void main(String[] args) {
53
if (args.length < 1) {
54
System.err.println("syntax: FileFormatGuesser <file> <file2> ...");
58
// to make sure the CDK LoggingTool is configured
59
LoggingTool logger = new LoggingTool();
60
LoggingTool.configureLog4j();
61
logger.dumpSystemProperties();
63
// loop over all files
64
for (int i=0; i<args.length; i++) {
65
String ifilename = args[i];
67
ReaderFactory factory = new ReaderFactory();
68
File input = new File(ifilename);
69
if (!input.isDirectory()) {
70
IChemObjectReader reader = factory.createReader(new FileReader(input));
72
System.out.println(ifilename + ": " + reader.getFormat().getFormatName());
74
System.out.println(ifilename + ": unknown format");
77
System.out.println("Skipping directory: " + ifilename);
79
} catch (Exception exception) {
80
logger.debug(exception);
81
System.err.println(ifilename + ": error=");
82
exception.printStackTrace();