Class SScanf

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, java.lang.Readable, java.util.Iterator<java.lang.Object>

    public class SScanf
    extends ScanfReader
    implements java.util.Iterator<java.lang.Object>
    • Constructor Detail

      • SScanf

        public SScanf​(java.lang.String theString,
                      java.lang.String format)
        creates a scanf reader for a given string and format and returns the approriate object valid format identifiers %f - returns Double %i - returns Integer %d - returns Integer %x - returns Integer %o - returns Integer %c - returns String %s - returns String
        Parameters:
        theString - the String to scan
        format - the formatting String to apply according to c++ sscanf rools
    • Method Detail

      • sscanf

        public java.util.Vector<java.lang.Object> sscanf()
        scan a string using C++ sscanf functionality
        Returns:
      • scanString

        public java.lang.String scanString​(ScanfFormat fmt)
                                    throws java.io.IOException,
                                           java.lang.IllegalArgumentException
        Description copied from class: ScanfReader
        Scan and return a String, using a pre-allocated ScanfFormat object. This saves the overhead of parsing the format from a string.
        Overrides:
        scanString in class ScanfReader
        Parameters:
        fmt - Format object
        Returns:
        Scanned String
        Throws:
        ScanfMatchException - Input did not match format
        java.io.EOFException - End of file
        java.io.IOException - Other input error
        java.lang.IllegalArgumentException - Error in format specification
        See Also:
        ScanfReader.scanString(org.cip4.jdflib.cformat .ScanfFormat)
      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface java.util.Iterator<java.lang.Object>
        See Also:
        Iterator.hasNext()
      • next

        public java.lang.Object next()
        returns the next Object (@see the constructor), null if the string has been completely parsed or an invalid format is scanned
        Specified by:
        next in interface java.util.Iterator<java.lang.Object>
      • remove

        public void remove()
        NOT IMPLEMENTED - the iterator is only forward
        Specified by:
        remove in interface java.util.Iterator<java.lang.Object>
        See Also:
        Iterator.remove()
      • sscanf

        public static java.util.Vector<java.lang.Object> sscanf​(java.lang.String theString,
                                                                java.lang.String format)
        convenience static function - see the constructor for details
        Parameters:
        theString -
        format -
        Returns:
        Vector of scanned objects - see constructor for details