David> I realize CSV module has a sniffer but it is something that is
    David> limited more or less to delimited files.  

Sure.  How about:

    def sniff(fname):
        if open(fname).read(4) == "<xml":
            return "xml"
        else:
            # assume csv - use its sniffer to generate a dialect
            return d

Of course, as the number of file formats grows, you'll need to expand the
logic.  You can also run the file(1) command and see what it says.  I seem
to recall someone asking about the equivalent to file(1) implemented in
Python awhile back.  

-- 
Skip Montanaro
Katrina Benefit Concerts: http://www.musi-cal.com/katrina
[EMAIL PROTECTED]
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to